diff --git a/src/nautilus-bookmark-list.c b/src/nautilus-bookmark-list.c index ad25b66d613c1145bb3380bb6a17021433add92e..0f8526ba64399ab6eb9696a06a22d97592fcd8b9 100644 --- a/src/nautilus-bookmark-list.c +++ b/src/nautilus-bookmark-list.c @@ -162,15 +162,17 @@ clear (NautilusBookmarkList *bookmarks) static void do_finalize (GObject *object) { - if (NAUTILUS_BOOKMARK_LIST (object)->monitor != NULL) + NautilusBookmarkList *self = NAUTILUS_BOOKMARK_LIST (object); + + if (self->monitor != NULL) { - g_file_monitor_cancel (NAUTILUS_BOOKMARK_LIST (object)->monitor); - NAUTILUS_BOOKMARK_LIST (object)->monitor = NULL; + g_file_monitor_cancel (self->monitor); + g_clear_object (&self->monitor); } - g_queue_free (NAUTILUS_BOOKMARK_LIST (object)->pending_ops); + g_queue_free (self->pending_ops); - clear (NAUTILUS_BOOKMARK_LIST (object)); + clear (self); G_OBJECT_CLASS (nautilus_bookmark_list_parent_class)->finalize (object); } @@ -508,7 +510,7 @@ save_file_async (NautilusBookmarkList *self) if (self->monitor != NULL) { g_file_monitor_cancel (self->monitor); - self->monitor = NULL; + g_clear_object (&self->monitor); } for (l = self->list; l; l = l->next)