all repos — fluxbox @ 932eebe0ddbc611ccf72cbebebbde656ae2d08ec

custom fork of the fluxbox windowmanager

couple of memory fixes from valgrind
simonb simonb
commit

932eebe0ddbc611ccf72cbebebbde656ae2d08ec

parent

23cdfaaff3dcae62d50bddb087ecac94bca5be4c

4 files changed, 9 insertions(+), 5 deletions(-)

jump to
M ChangeLogChangeLog

@@ -1,6 +1,8 @@

(Format: Year/Month/Day) Changes for 0.9.16: *06/04/22: + * Couple of memory-based fixes from valgrind (Simon) + Keys.cc Screen.cc MenuCreator.cc * Applied #1467926 and #1458069, minor other changes (Mathias) docs/asciidoc/fluxbox.txt * static CommandParser could be used after destruction (Simon)
M src/Keys.ccsrc/Keys.cc

@@ -117,8 +117,8 @@ for ( ; it != it_end; it++)

delete *it; map_it->second->clear(); delete map_it->second; - m_map.erase(map_it->first); } + m_map.clear(); } /**

@@ -343,7 +343,6 @@ deletes the tree and load configuration

returns true on success else false */ bool Keys::reconfigure(const char *filename) { - deleteTree(); return load(filename); }
M src/MenuCreator.ccsrc/MenuCreator.cc

@@ -458,7 +458,7 @@ menu->removeAll(); // clear old items

menu->disableTitle(); // not titlebar if (screen->windowMenuFilename().empty() || ! createWindowMenuFromFile(screen->windowMenuFilename(), *menu, true)) { - char default_menu[][11] = { + char *default_menu[] = { "shade", "stick", "maximize",

@@ -472,7 +472,7 @@ "separator",

"close", 0 }; - for (unsigned int i=0; i < sizeof(default_menu); ++i) + for (unsigned int i=0; default_menu[i]; ++i) createWindowMenuItem(default_menu[i], "", *menu); } menu->reconfigure(); // update graphics
M src/Screen.ccsrc/Screen.cc

@@ -345,8 +345,11 @@

XSetErrorHandler((XErrorHandler) old); managed = running; - if (! managed) + if (! managed) { + delete m_placement_strategy; m_placement_strategy = 0; + delete m_focus_control; m_focus_control = 0; return; + } // TODO fluxgen: check if this is the right place m_head_areas = new HeadArea[numHeads() ? numHeads() : 1];