[gnome-shell] shell-app: Don't crash when trying to dispose



commit 36c69124f749c48f583e8ff2413d27e10d1229e0
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Tue Jan 28 16:47:23 2014 -0500

    shell-app: Don't crash when trying to dispose
    
    If we dispose a ShellApp that has windows left, then we'll crash
    when we remove the last window, as that frees and NULLs out
    app->running_state.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=723197

 src/shell-app.c |    8 +++-----
 1 files changed, 3 insertions(+), 5 deletions(-)
---
diff --git a/src/shell-app.c b/src/shell-app.c
index 9dabeba..dfca1d6 100644
--- a/src/shell-app.c
+++ b/src/shell-app.c
@@ -1384,11 +1384,9 @@ shell_app_dispose (GObject *object)
 
   g_clear_object (&app->info);
 
-  if (app->running_state)
-    {
-      while (app->running_state->windows)
-        _shell_app_remove_window (app, app->running_state->windows->data);
-    }
+  while (app->running_state)
+    _shell_app_remove_window (app, app->running_state->windows->data);
+
   /* We should have been transitioned when we removed all of our windows */
   g_assert (app->state == SHELL_APP_STATE_STOPPED);
   g_assert (app->running_state == NULL);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]