all repos — openbox @ 0855269035e17a1c4702d3cae85c98f46af66191

openbox fork - make it a bit more like ryudo

fix crashing when doing a directional focus with no windows on the desktop
Dana Jansens danakj@orodu.net
commit

0855269035e17a1c4702d3cae85c98f46af66191

parent

52d751ecd67bc063df51c815aa6980a55e2f4eb7

1 files changed, 12 insertions(+), 4 deletions(-)

jump to
M openbox/focus.copenbox/focus.c

@@ -280,8 +280,12 @@ } else if (done && dialog) {

goto done_cycle; } - if (!first) first = focus_client; - if (!focus_cycle_target) focus_cycle_target = focus_client; + if (!focus_order[screen_desktop]) + goto done_cycle; + + if (!first) first = focus_order[screen_desktop]->data; + if (!focus_cycle_target) focus_cycle_target = + focus_order[screen_desktop]->data; if (linear) list = client_list; else list = focus_order[screen_desktop];

@@ -352,8 +356,12 @@ } else if (done && dialog) {

goto done_cycle; } - if (!first) first = focus_client; - if (!focus_cycle_target) focus_cycle_target = focus_client; + if (!focus_order[screen_desktop]) + goto done_cycle; + + if (!first) first = focus_order[screen_desktop]->data; + if (!focus_cycle_target) focus_cycle_target = + focus_order[screen_desktop]->data; if ((ft = client_find_directional(focus_cycle_target, dir))) { if (ft != focus_cycle_target) {/* prevents flicker */