diff options
author | Ross Lagerwall <rosslagerwall@gmail.com> | 2013-10-27 17:19:31 +0200 |
---|---|---|
committer | Ross Lagerwall <rosslagerwall@gmail.com> | 2013-10-31 21:48:05 +0200 |
commit | 9c11445c38132f6c3ee9d1753f8e8093f7ccca5d (patch) | |
tree | 4eea8f215278960a3ed931cf611be70913369672 /daemon/gvfsbackendrecent.c | |
parent | 1217b2760b94d299457d542edf142d83527852f7 (diff) | |
download | gvfs-9c11445c38132f6c3ee9d1753f8e8093f7ccca5d.tar.gz |
recent: Prevent spurious monitor notifications
Ignore nonexistent files completely to prevent them being repeatedly
deleted and then re-added to the list of files.
https://bugzilla.gnome.org/show_bug.cgi?id=686135
Diffstat (limited to 'daemon/gvfsbackendrecent.c')
-rw-r--r-- | daemon/gvfsbackendrecent.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/daemon/gvfsbackendrecent.c b/daemon/gvfsbackendrecent.c index e01bc51a..a3b87ff6 100644 --- a/daemon/gvfsbackendrecent.c +++ b/daemon/gvfsbackendrecent.c @@ -408,9 +408,9 @@ reload_recent_items (GVfsBackendRecent *backend) uri = gtk_recent_info_get_uri (recent_info); guid = g_hash_table_lookup (backend->uri_map, uri); - if (guid) + if (gtk_recent_info_exists (recent_info)) { - if (gtk_recent_info_exists (recent_info)) + if (guid) { RecentItem *item; item = g_hash_table_lookup (backend->items, guid); @@ -418,14 +418,14 @@ reload_recent_items (GVfsBackendRecent *backend) changed = g_list_prepend (changed, item->guid); not_seen_items = g_list_remove (not_seen_items, item); } - } - else - { - RecentItem *item; - item = recent_item_new (recent_info); - added = g_list_prepend (added, item->guid); - g_hash_table_insert (backend->items, item->guid, item); - g_hash_table_insert (backend->uri_map, item->uri, item->guid); + else + { + RecentItem *item; + item = recent_item_new (recent_info); + added = g_list_prepend (added, item->guid); + g_hash_table_insert (backend->items, item->guid, item); + g_hash_table_insert (backend->uri_map, item->uri, item->guid); + } } gtk_recent_info_unref (recent_info); } |