summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOndrej Holy <oholy@redhat.com>2017-12-14 10:07:01 +0100
committerOndrej Holy <oholy@redhat.com>2017-12-15 09:45:59 +0100
commit761f226a13b5d46b2f010c8e1c2723f675184be8 (patch)
tree2705ee5882cb05450712e5a4d496bae5e5eaf116
parentb77ad0a77df1acec5e5113338de7f48a49c8cd6d (diff)
downloadgvfs-761f226a13b5d46b2f010c8e1c2723f675184be8.tar.gz
recent: Prevent crash when recent file changed
If recent file is changed and directory monitor doesn't exists, the recent backend crashes. Check the monitor first before emitting event in order to prevent this crashes.
-rw-r--r--daemon/gvfsbackendrecent.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/daemon/gvfsbackendrecent.c b/daemon/gvfsbackendrecent.c
index 29476002..a1803f3c 100644
--- a/daemon/gvfsbackendrecent.c
+++ b/daemon/gvfsbackendrecent.c
@@ -561,9 +561,10 @@ reload_recent_items (GVfsBackendRecent *backend)
g_list_free (added);
/* process changes */
- for (l = changed; l; l = l->next)
+ if (monitor)
{
- g_vfs_monitor_emit_event (monitor, G_FILE_MONITOR_EVENT_ATTRIBUTE_CHANGED, l->data, NULL);
+ for (l = changed; l; l = l->next)
+ g_vfs_monitor_emit_event (monitor, G_FILE_MONITOR_EVENT_ATTRIBUTE_CHANGED, l->data, NULL);
}
g_list_free (changed);