aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormarkt <markt>2007-06-01 02:15:26 (GMT)
committermarkt <markt>2007-06-01 02:15:26 (GMT)
commite6e784e20db9419287382a5293892a6a02ad5e7f (patch)
tree35f21f5c0f9e062064861b86972c2062e74d9823 /src
parentbbea139cae43172b0f84f10421c174256d1262be (diff)
downloadfluxbox_pavel-e6e784e20db9419287382a5293892a6a02ad5e7f.zip
fluxbox_pavel-e6e784e20db9419287382a5293892a6a02ad5e7f.tar.bz2
fixed infinite loop caused by removing the last workspace when it contains windows
Diffstat (limited to 'src')
-rw-r--r--src/Workspace.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/Workspace.cc b/src/Workspace.cc
index 66dd4a6..fd81e5e 100644
--- a/src/Workspace.cc
+++ b/src/Workspace.cc
@@ -245,8 +245,9 @@ void Workspace::hideAll(bool interrupt_moving) {
245 245
246 246
247void Workspace::removeAll(unsigned int dest) { 247void Workspace::removeAll(unsigned int dest) {
248 Windows::iterator it = m_windowlist.begin(); 248 Windows tmp_list(m_windowlist);
249 Windows::const_iterator it_end = m_windowlist.end(); 249 Windows::iterator it = tmp_list.begin();
250 Windows::const_iterator it_end = tmp_list.end();
250 for (; it != it_end; ++it) 251 for (; it != it_end; ++it)
251 m_screen.sendToWorkspace(dest, *it, false); 252 m_screen.sendToWorkspace(dest, *it, false);
252} 253}