- stacking_list = g_list_insert_before(stacking_list, it_before, win);
-
- it_before = g_list_find(stacking_list, win)->prev;
- if (!it_before)
- wins[0] = focus_backup;
- else
- wins[0] = window_top(it_before->data);
- wins[1] = window_top(win);
-
- XRestackWindows(ob_display, wins, 2);
+ if (!it_before) {
+ /* out of ideas, just add it normally... */
+ stacking_add(win);
+ } else {
+ stacking_list = g_list_insert_before(stacking_list, it_before,win);
+
+ it_before = g_list_find(stacking_list, win)->prev;
+ if (!it_before)
+ wins[0] = focus_backup;
+ else
+ wins[0] = window_top(it_before->data);
+ wins[1] = window_top(win);
+
+ XRestackWindows(ob_display, wins, 2);
+ }