stacking_list = g_list_delete_link(stacking_list, it);
/* go from the bottom of the stacking list up */
- for (it = g_list_last(stacking_list); it; it = g_list_previous(it)) {
+ for (it = g_list_last(stacking_list); it; it = next) {
+ next = g_list_previous(it);
+
if (WINDOW_IS_CLIENT(it->data)) {
ObClient *ch = it->data;
last = NULL;
for (it = g_list_last(stacking_list); it; it = g_list_previous(it))
{
- if (window_layer(it->data) < selected->layer)
+ if (window_layer(it->data) < selected->layer) {
+ last = it;
continue;
+ }
/* if lowering, stop at the beginning of the layer */
if (!raise)
break;