diff options
author | markt <markt> | 2007-04-24 16:06:22 (GMT) |
---|---|---|
committer | markt <markt> | 2007-04-24 16:06:22 (GMT) |
commit | 35605d9c778b4b8aa8aaa39c059ea958dc0f196b (patch) | |
tree | 00fe44a74739425dc5e5dc2737a9ad09fd65623a /src | |
parent | ca8c53eab8037c45eaeb6bd25ccdaa5d1720083e (diff) | |
download | fluxbox_pavel-35605d9c778b4b8aa8aaa39c059ea958dc0f196b.zip fluxbox_pavel-35605d9c778b4b8aa8aaa39c059ea958dc0f196b.tar.bz2 |
fix segfault on exit/restart after having opened a custommenu
Diffstat (limited to 'src')
-rw-r--r-- | src/fluxbox.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/fluxbox.cc b/src/fluxbox.cc index e0bb345..ef747e6 100644 --- a/src/fluxbox.cc +++ b/src/fluxbox.cc | |||
@@ -459,6 +459,10 @@ Fluxbox::~Fluxbox() { | |||
459 | } | 459 | } |
460 | m_atomhandler.clear(); | 460 | m_atomhandler.clear(); |
461 | 461 | ||
462 | // this needs to be destroyed before screens; otherwise, menus stored in | ||
463 | // key commands cause a segfault when the XLayerItem is destroyed | ||
464 | m_key.reset(0); | ||
465 | |||
462 | // destroy screens (after others, as they may do screen things) | 466 | // destroy screens (after others, as they may do screen things) |
463 | while (!m_screen_list.empty()) { | 467 | while (!m_screen_list.empty()) { |
464 | delete m_screen_list.back(); | 468 | delete m_screen_list.back(); |