summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOndrej Holy <oholy@redhat.com>2017-12-14 10:07:01 +0100
committerOndrej Holy <oholy@redhat.com>2018-01-02 11:16:23 +0100
commit8b8914855b85ee1e5c702b42cbef18ffa9e6ab93 (patch)
tree35396465f652ca8588f23efceb38cbdbc2fa3197
parent44a490d7cc890d14ae6b5f3bad2a25dab83c3c40 (diff)
downloadgvfs-8b8914855b85ee1e5c702b42cbef18ffa9e6ab93.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);