summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2007-03-14 09:44:20 +0000
committerAlexander Larsson <alexl@src.gnome.org>2007-03-14 09:44:20 +0000
commit16f5f5ff60aa4c1514f32e4ea2d94fec9ca0dba5 (patch)
treea30c5b7090e853f69628de9e021a50256c7b44fd
parente801bd7af81b4f996f592b544a2bebf02db10e7c (diff)
downloadnautilus-16f5f5ff60aa4c1514f32e4ea2d94fec9ca0dba5.tar.gz
Make sure we never schedule an update after the window has been destroyed.
2007-03-14 Alexander Larsson <alexl@redhat.com> * src/file-manager/fm-directory-view.c (schedule_update_menus) (schedule_update_status): Make sure we never schedule an update after the window has been destroyed. Likely fixes #349551 svn path=/trunk/; revision=12802
-rw-r--r--ChangeLog7
-rw-r--r--src/file-manager/fm-directory-view.c12
2 files changed, 15 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 380ef80bc..d7f95b16b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2007-03-14 Alexander Larsson <alexl@redhat.com>
+
+ * src/file-manager/fm-directory-view.c (schedule_update_menus)
+ (schedule_update_status):
+ Make sure we never schedule an update after the window has been
+ destroyed. Likely fixes #349551
+
2007-03-12 Alexander Larsson <alexl@redhat.com>
* configure.in:
diff --git a/src/file-manager/fm-directory-view.c b/src/file-manager/fm-directory-view.c
index 83baf2e1c..9e5f3fcef 100644
--- a/src/file-manager/fm-directory-view.c
+++ b/src/file-manager/fm-directory-view.c
@@ -7979,9 +7979,11 @@ schedule_update_menus (FMDirectoryView *view)
{
g_assert (FM_IS_DIRECTORY_VIEW (view));
- /* Make sure we haven't already destroyed it */
- /*g_assert (view->details->window != NULL);*/
-
+ /* Don't schedule updates after destroy (#349551) */
+ if (view->details->window == NULL) {
+ return;
+ }
+
view->details->menu_states_untrustworthy = TRUE;
/* Schedule a menu update with the current update interval */
@@ -8017,7 +8019,9 @@ schedule_update_status (FMDirectoryView *view)
g_assert (FM_IS_DIRECTORY_VIEW (view));
/* Make sure we haven't already destroyed it */
- g_assert (view->details->window != NULL);
+ if (view->details->window == NULL) {
+ return;
+ }
if (view->details->loading) {
/* Don't update status bar while loading the dir */