all repos — fluxbox @ 798ecb88d57e5ed7af24be62a52e6f0ccb87a7de

custom fork of the fluxbox windowmanager

cache result of getWorkspace()
Mathias Gumz akira at fluxbox dot org
commit

798ecb88d57e5ed7af24be62a52e6f0ccb87a7de

parent

4a161132c2aacdbe4a7039f3f73f870607b5bce0

1 files changed, 3 insertions(+), 2 deletions(-)

jump to
M src/Screen.ccsrc/Screen.cc

@@ -1409,8 +1409,9 @@ getWorkspace(wkspc_id)->addWindow(*w);

} else if (ignore_sticky || ! w->isStuck()) { // fresh windows have workspaceNumber == -1, which leads to // an invalid workspace (unsigned int) - if (getWorkspace(w->workspaceNumber())) - getWorkspace(w->workspaceNumber())->removeWindow(w, true); + Workspace* ws = getWorkspace(w->workspaceNumber()); + if (ws) + ws->removeWindow(w, true); getWorkspace(wkspc_id)->addWindow(*w); } }