From 1f550dbc72a771ebe682714e9c8d6777b2af9fda Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Sat, 19 Jun 2010 11:32:00 -0400 Subject: [PATCH] [ShellApp] Move assertion below precondition check Need to track down why we're calling _remove_window with a window not in the app, but this is the quick fix for a crasher. --- src/shell-app.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/shell-app.c b/src/shell-app.c index 566b1e723..63dbc1401 100644 --- a/src/shell-app.c +++ b/src/shell-app.c @@ -757,11 +757,12 @@ void _shell_app_remove_window (ShellApp *app, MetaWindow *window) { - g_assert (app->running_state != NULL); if (!g_slist_find (app->running_state->windows, window)) return; + g_assert (app->running_state != NULL); + g_signal_handlers_disconnect_by_func (window, G_CALLBACK(shell_app_on_unmanaged), app); g_signal_handlers_disconnect_by_func (window, G_CALLBACK(shell_app_on_user_time_changed), app); g_object_unref (window);