[tracker/tracker-0.10] libtracker-miner: Unset parent folder iri cache if dealing with the root dir



commit c2dc99bfe50080102c356b6be118cbc86099d9fb
Author: Carlos Garnacho <carlos lanedo com>
Date:   Thu Dec 22 14:21:10 2011 +0100

    libtracker-miner: Unset parent folder iri cache if dealing with the root dir
    
    This fixes infinite recursion when indexing an out-of-config-trees file
    (eg. via tracker-control -f <file>), as the miner aditionally indexes the
    parent folders up to file:///, when reaching that case stale URN cache data
    was making the miner think that the root folder hadn't been indexed yet.

 src/libtracker-miner/tracker-miner-fs.c |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)
---
diff --git a/src/libtracker-miner/tracker-miner-fs.c b/src/libtracker-miner/tracker-miner-fs.c
index 9dc4a40..bbd4976 100644
--- a/src/libtracker-miner/tracker-miner-fs.c
+++ b/src/libtracker-miner/tracker-miner-fs.c
@@ -1782,6 +1782,14 @@ iri_cache_check_update (TrackerMinerFS *fs,
 		}
 
 		g_object_unref (parent);
+	} else {
+		if (fs->priv->current_iri_cache_parent)
+			g_object_unref (fs->priv->current_iri_cache_parent);
+
+		g_free (fs->priv->current_iri_cache_parent_urn);
+
+		fs->priv->current_iri_cache_parent_urn = NULL;
+		fs->priv->current_iri_cache_parent = NULL;
 	}
 }
 



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