]> Dogcows Code - chaz/openbox/blobdiff - openbox/stacking.c
dont change the stacking order hint while shuting down
[chaz/openbox] / openbox / stacking.c
index 081bde932bb8b0cefbc91e3a2bc4c9dac0eef10a..1d296e5f604ab5bb0a4b06517711bb0d1767fd01 100644 (file)
@@ -13,12 +13,18 @@ void stacking_set_list()
     GList *it;
     guint size = g_list_length(stacking_list);
 
+    /* on shutdown, don't update the properties, so that we can read it back
+       in on startup and re-stack the windows as they were before we shut down
+    */
+    if (ob_state == State_Exiting) return;
+
     /* create an array of the window ids (from bottom to top,
        reverse order!) */
     if (size > 0) {
        windows = g_new(Window, size);
        win_it = windows;
-       for (it = g_list_last(stacking_list); it; it = it->prev, ++win_it)
+       for (it = g_list_last(stacking_list); it != NULL;
+             it = it->prev, ++win_it)
            *win_it = ((Client*)it->data)->window;
     } else
        windows = NULL;
@@ -46,7 +52,7 @@ void stacking_raise(Client *client)
   
     /* the stacking list is from highest to lowest */
     it = stacking_list;
-    while (it) {
+    while (it != NULL) {
        Client *c = it->data;
        if (client->layer >= c->layer && m != c)
            break;
This page took 0.020609 seconds and 4 git commands to generate.