From e6e784e20db9419287382a5293892a6a02ad5e7f Mon Sep 17 00:00:00 2001 From: markt Date: Fri, 1 Jun 2007 02:15:26 +0000 Subject: fixed infinite loop caused by removing the last workspace when it contains windows --- ChangeLog | 4 ++++ src/Workspace.cc | 5 +++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index b9e0571..330e3f2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ (Format: Year/Month/Day) Changes for 1.0.0: +*07/06/01: + * Fixed infinite loop caused by removing the last workspace when it contains + windows (Mark) + Workspace.cc *07/05/20: * Fixed bug #1717782, Bad fullscreen in ooimpress2 ( Henrik ) mwm hint had no-resize which made resizing with 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) { void Workspace::removeAll(unsigned int dest) { - Windows::iterator it = m_windowlist.begin(); - Windows::const_iterator it_end = m_windowlist.end(); + Windows tmp_list(m_windowlist); + Windows::iterator it = tmp_list.begin(); + Windows::const_iterator it_end = tmp_list.end(); for (; it != it_end; ++it) m_screen.sendToWorkspace(dest, *it, false); } -- cgit v0.11.2