summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--daemon/trashlib/dirwatch.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/daemon/trashlib/dirwatch.c b/daemon/trashlib/dirwatch.c
index f2bc6924..6a2f1f6f 100644
--- a/daemon/trashlib/dirwatch.c
+++ b/daemon/trashlib/dirwatch.c
@@ -216,6 +216,7 @@ dir_watch_recursive_destroy (gpointer user_data)
watch->state = FALSE;
}
+ g_file_monitor_cancel (watch->parent_monitor);
g_object_unref (watch->parent_monitor);
watch->parent_monitor = NULL;
}
@@ -271,7 +272,10 @@ dir_watch_free (DirWatch *watch)
if (watch != NULL)
{
if (watch->parent_monitor)
- g_object_unref (watch->parent_monitor);
+ {
+ g_file_monitor_cancel (watch->parent_monitor);
+ g_object_unref (watch->parent_monitor);
+ }
g_object_unref (watch->directory);
g_object_unref (watch->topdir);