[tracker] miners/fs: Correctly remove failed extractions from queue



commit 297ed8fe22bd51fc1eae00df4b3a1306893b117f
Author: Sam Thursfield <sam thursfield codethink co uk>
Date:   Wed Jun 27 19:13:52 2012 +0100

    miners/fs: Correctly remove failed extractions from queue
    
    Correctly remove task from extraction queue if g_file_query_info_async()
    fails.
    
    This bug prevents failsafe extraction from starting in some cases, which
    in turn means that the miner may eventually stall due to the extraction
    queue being full.

 src/miners/fs/tracker-miner-files.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
---
diff --git a/src/miners/fs/tracker-miner-files.c b/src/miners/fs/tracker-miner-files.c
index 6503bf9..33938c9 100644
--- a/src/miners/fs/tracker-miner-files.c
+++ b/src/miners/fs/tracker-miner-files.c
@@ -2306,8 +2306,10 @@ process_file_cb (GObject      *object,
 	if (error) {
 		/* Something bad happened, notify about the error */
 		tracker_miner_fs_file_notify (TRACKER_MINER_FS (data->miner), file, error);
+		priv->extraction_queue = g_list_remove (priv->extraction_queue, data);
 		process_file_data_free (data);
 		g_error_free (error);
+
 		return;
 	}
 



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