[tracker] Fixes NB#174333 - Each file is listed twice in tracker search results



commit 2e5d8d43c33f4a41d8580f18056b1657d0b6356b
Author: Martyn Russell <martyn lanedo com>
Date:   Wed Jun 16 15:26:07 2010 +0100

    Fixes NB#174333 - Each file is listed twice in tracker search results
    
    Unset parent folder so caches are regenerated.
    
    The issue was due to priv->current_folder being reused for both mtime
    cache (for crawling stage) and iri cache (for indexing stage). So when
    recrawling, the miner changes current_folder without invalidating the
    iri cache, so there could be a mismatch when it enters the indexing
    stage again.

 src/libtracker-miner/tracker-miner-fs.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)
---
diff --git a/src/libtracker-miner/tracker-miner-fs.c b/src/libtracker-miner/tracker-miner-fs.c
index 01b1fee..8244304 100644
--- a/src/libtracker-miner/tracker-miner-fs.c
+++ b/src/libtracker-miner/tracker-miner-fs.c
@@ -2936,6 +2936,12 @@ crawl_directories_cb (gpointer user_data)
 	}
 
 	if (!fs->private->directories) {
+		if (fs->private->current_parent) {
+			/* Unset parent folder so caches are regenerated */
+			g_object_unref (fs->private->current_parent);
+			fs->private->current_parent = NULL;
+		}
+
 		/* Now we handle the queue */
 		item_queue_handlers_set_up (fs);
 		crawl_directories_stop (fs);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]