summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorakir <akir>2004-09-06 13:17:56 (GMT)
committerakir <akir>2004-09-06 13:17:56 (GMT)
commitb470256cf6d2fac212c6f51e4daaca13037c00b5 (patch)
tree1d4ae6f96b74460099a396737f232463ecb84ec1
parent0e82d97262b05d781b7f6f67700117120b4f1558 (diff)
downloadfluxbox_lack-b470256cf6d2fac212c6f51e4daaca13037c00b5.zip
fluxbox_lack-b470256cf6d2fac212c6f51e4daaca13037c00b5.tar.bz2
fix the segfault-fix of fluxgen some days before. workspacemenu must be
destroyed after rootmenu is cleaned.
-rw-r--r--src/Screen.cc8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/Screen.cc b/src/Screen.cc
index 8d3e2ee..67e954b 100644
--- a/src/Screen.cc
+++ b/src/Screen.cc
@@ -22,7 +22,7 @@
22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
23// DEALINGS IN THE SOFTWARE. 23// DEALINGS IN THE SOFTWARE.
24 24
25// $Id: Screen.cc,v 1.287 2004/09/05 01:11:41 fluxgen Exp $ 25// $Id: Screen.cc,v 1.288 2004/09/06 13:17:56 akir Exp $
26 26
27 27
28#include "Screen.hh" 28#include "Screen.hh"
@@ -410,12 +410,14 @@ BScreen::~BScreen() {
410 410
411 if (! managed) 411 if (! managed)
412 return; 412 return;
413
414 if (m_rootmenu.get() != 0)
415 m_rootmenu->removeAll();
416
413 // Since workspacemenu holds client list menus (from workspace) 417 // Since workspacemenu holds client list menus (from workspace)
414 // we need to destroy it before we destroy workspaces 418 // we need to destroy it before we destroy workspaces
415 m_workspacemenu.reset(0); 419 m_workspacemenu.reset(0);
416 420
417 if (m_rootmenu.get() != 0)
418 m_rootmenu->removeAll();
419 421
420 if (geom_pixmap != None) 422 if (geom_pixmap != None)
421 imageControl().removeImage(geom_pixmap); 423 imageControl().removeImage(geom_pixmap);