summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Thursfield <sam@afuera.me.uk>2018-07-20 17:18:51 +0200
committerSam Thursfield <sam@afuera.me.uk>2018-07-20 17:18:51 +0200
commit2f7ade534a452153ab9f0faa10e403b30e845c75 (patch)
treed8f7371093206449104988ef1fa9e1eae43e144a
parent0dcb7ab20c5dd20db2bb955fd4fd64a2131059db (diff)
parent68381c1dd7b68b1f83eef5c8590965f18224c732 (diff)
downloadtracker-2f7ade534a452153ab9f0faa10e403b30e845c75.tar.gz
Merge branch 'sam/notifier-race-fix'
See https://gitlab.gnome.org/GNOME/tracker/merge_requests/9
-rw-r--r--src/libtracker-miner/tracker-file-notifier.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/libtracker-miner/tracker-file-notifier.c b/src/libtracker-miner/tracker-file-notifier.c
index 59ea41f6f..53795468d 100644
--- a/src/libtracker-miner/tracker-file-notifier.c
+++ b/src/libtracker-miner/tracker-file-notifier.c
@@ -1069,8 +1069,7 @@ tracker_file_notifier_ensure_parents (TrackerFileNotifier *notifier,
parent = g_file_get_parent (file);
while (parent) {
- if (tracker_indexing_tree_file_is_root (priv->indexing_tree, parent) ||
- tracker_file_notifier_get_file_iri (notifier, parent, TRUE)) {
+ if (tracker_file_notifier_get_file_iri (notifier, parent, TRUE)) {
g_object_unref (parent);
break;
}
@@ -1082,6 +1081,11 @@ tracker_file_notifier_ensure_parents (TrackerFileNotifier *notifier,
g_object_unref (parent);
g_signal_emit (notifier, signals[FILE_CREATED], 0, canonical);
+
+ if (tracker_indexing_tree_file_is_root (priv->indexing_tree, canonical)) {
+ break;
+ }
+
parent = g_file_get_parent (canonical);
}
}