[tracker/hierarchical-indexing] TrackerMinerFiles: do not monitor child dirs of IndexSingleDirectories.
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker/hierarchical-indexing] TrackerMinerFiles: do not monitor child dirs of IndexSingleDirectories.
- Date: Fri, 19 Feb 2010 11:51:33 +0000 (UTC)
commit d21427b98afc075e0d35b8f10cbcb22a5e0663de
Author: Carlos Garnacho <carlos lanedo com>
Date: Fri Feb 19 12:49:43 2010 +0100
TrackerMinerFiles: do not monitor child dirs of IndexSingleDirectories.
Direct child dirs were being added a monitor, even if the crawler didn't
get in there.
src/tracker-miner-fs/tracker-miner-files.c | 17 +++++++++++++++++
1 files changed, 17 insertions(+), 0 deletions(-)
---
diff --git a/src/tracker-miner-fs/tracker-miner-files.c b/src/tracker-miner-fs/tracker-miner-files.c
index 4fcd3e8..91049be 100644
--- a/src/tracker-miner-fs/tracker-miner-files.c
+++ b/src/tracker-miner-fs/tracker-miner-files.c
@@ -1310,6 +1310,7 @@ miner_files_monitor_directory (TrackerMinerFS *fs,
GFile *file)
{
TrackerMinerFiles *mf;
+ GSList *list;
mf = TRACKER_MINER_FILES (fs);
@@ -1317,6 +1318,22 @@ miner_files_monitor_directory (TrackerMinerFS *fs,
return FALSE;
}
+ /* We don't want child directories inside IndexSingleDirectories
+ * to have a monitor added.
+ */
+ for (list = mf->private->index_single_directories; list; list = list->next) {
+ gboolean is_child = FALSE;
+ GFile *dir;
+
+ dir = g_file_new_for_path (list->data);
+ is_child = g_file_has_prefix (file, dir);
+ g_object_unref (dir);
+
+ if (is_child) {
+ return FALSE;
+ }
+ }
+
/* Fallback to the check directory routine, since we don't
* monitor anything we don't process.
*/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]