[tracker/hierarchical-indexing: 7/7] TrackerMinerFS: Ensure ::check-directory is called on root folders.
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker/hierarchical-indexing: 7/7] TrackerMinerFS: Ensure ::check-directory is called on root folders.
- Date: Thu, 18 Feb 2010 14:24:37 +0000 (UTC)
commit 17cdc5128226860132283853f5490fbcfd1d5ad2
Author: Carlos Garnacho <carlos lanedo com>
Date: Thu Feb 18 14:29:53 2010 +0100
TrackerMinerFS: Ensure ::check-directory is called on root folders.
src/libtracker-miner/tracker-crawler.c | 22 +++++++++++++++++-----
1 files changed, 17 insertions(+), 5 deletions(-)
---
diff --git a/src/libtracker-miner/tracker-crawler.c b/src/libtracker-miner/tracker-crawler.c
index 1980f95..462ce94 100644
--- a/src/libtracker-miner/tracker-crawler.c
+++ b/src/libtracker-miner/tracker-crawler.c
@@ -418,12 +418,24 @@ process_func (gpointer data)
if (dir_data) {
/* One directory inside the tree hierarchy is being inspected */
if (!dir_data->was_inspected) {
- /* Directory contents haven't been inspected yet,
- * stop this idle function while it's being iterated
- */
- file_enumerate_children (crawler, info, dir_data);
+ gboolean iterate;
+
+ if (G_NODE_IS_ROOT (dir_data->node)) {
+ iterate = check_directory (crawler, info, dir_data->node->data);
+ } else {
+ /* Directory has been already checked in the block below */
+ iterate = TRUE;
+ }
+
dir_data->was_inspected = TRUE;
- stop_idle = TRUE;
+
+ if (iterate) {
+ /* Directory contents haven't been inspected yet,
+ * stop this idle function while it's being iterated
+ */
+ file_enumerate_children (crawler, info, dir_data);
+ stop_idle = TRUE;
+ }
} else if (dir_data->was_inspected &&
!dir_data->ignored_by_content &&
dir_data->children != NULL) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]