[tracker/tracker-0.6] Fix iterating OVER every other device in the processor's list
- From: Martyn James Russell <mr src gnome org>
- To: svn-commits-list gnome org
- Subject: [tracker/tracker-0.6] Fix iterating OVER every other device in the processor's list
- Date: Tue, 2 Jun 2009 10:35:41 -0400 (EDT)
commit 5cb5fbaeddc3a7e8baa62495775f456f1261abf5
Author: Martyn Russell <martyn imendio com>
Date: Tue Jun 2 15:10:43 2009 +0100
Fix iterating OVER every other device in the processor's list
---
src/trackerd/tracker-processor.c | 40 ++++++++++++++++++++-----------------
1 files changed, 22 insertions(+), 18 deletions(-)
diff --git a/src/trackerd/tracker-processor.c b/src/trackerd/tracker-processor.c
index 68235f3..ee131e5 100644
--- a/src/trackerd/tracker-processor.c
+++ b/src/trackerd/tracker-processor.c
@@ -1095,7 +1095,18 @@ process_device_next (TrackerProcessor *processor)
processor->private->current_device = processor->private->devices;
}
} else {
- processor->private->current_device = processor->private->current_device->next;
+ GList *l;
+
+ l = processor->private->current_device;
+
+ /* Now free that device so we don't recrawl it */
+ if (l) {
+ g_free (l->data);
+
+ processor->private->current_device =
+ processor->private->devices =
+ g_list_delete_link (processor->private->devices, l);
+ }
}
/* If we have no further devices to iterate */
@@ -1111,6 +1122,9 @@ process_device_next (TrackerProcessor *processor)
static void
process_modules_start (TrackerProcessor *processor)
{
+ g_message ("Processor has started iterating %d modules",
+ g_list_length (processor->private->modules));
+
if (processor->private->timer) {
g_timer_destroy (processor->private->timer);
}
@@ -1135,8 +1149,8 @@ process_modules_stop (TrackerProcessor *processor)
}
g_message ("--------------------------------------------------");
- g_message ("Processor %s crawling modules",
- processor->private->interrupted ? "been stopped" : "has finished");
+ g_message ("Processor has %s iterating modules",
+ processor->private->interrupted ? "been stopped while" : "finished");
processor->private->finished_modules = TRUE;
@@ -1179,6 +1193,9 @@ process_modules_stop (TrackerProcessor *processor)
static void
process_devices_start (TrackerProcessor *processor)
{
+ g_message ("Processor has started iterating %d devices",
+ g_list_length (processor->private->devices));
+
if (processor->private->timer) {
g_timer_destroy (processor->private->timer);
}
@@ -1203,8 +1220,8 @@ process_devices_stop (TrackerProcessor *processor)
}
g_message ("--------------------------------------------------");
- g_message ("Processor %s crawling devices",
- processor->private->interrupted ? "been stopped" : "has finished");
+ g_message ("Processor has %s iterating devices",
+ processor->private->interrupted ? "been stopped while" : "finished");
processor->private->finished_devices = TRUE;
@@ -1755,19 +1772,6 @@ crawler_finished_cb (TrackerCrawler *crawler,
processor->private->total_files_found += files_found;
processor->private->total_files_ignored += files_ignored;
- if (processor->private->finished_modules == TRUE &&
- processor->private->finished_devices == FALSE) {
- GList *l;
-
- l = processor->private->current_device;
-
- /* Now free that device so we don't recrawl it */
- if (l) {
- g_free (l->data);
- processor->private->devices = g_list_delete_link (processor->private->devices, l);
- }
- }
-
/* Proceed to next thing to process */
process_continue (processor);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]