[tracker-miners/wip/carlosg/mtime-in-graphs: 1/3] tracker-extract: Guard timer management under debug checks




commit 36a8b0d0072e14e95e7e6033ee97bc5c87a930f9
Author: Carlos Garnacho <carlosg gnome org>
Date:   Thu Aug 27 07:36:25 2020 +0200

    tracker-extract: Guard timer management under debug checks
    
    This timer is just created if statistics debugging is set, should be
    used the same way.

 src/tracker-extract/tracker-extract.c | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)
---
diff --git a/src/tracker-extract/tracker-extract.c b/src/tracker-extract/tracker-extract.c
index 784ffcb9c..b7e27ede2 100644
--- a/src/tracker-extract/tracker-extract.c
+++ b/src/tracker-extract/tracker-extract.c
@@ -265,14 +265,14 @@ notify_task_finish (TrackerExtractTask *task,
                } else {
                        priv->unhandled_count++;
                }
+
+               if (!priv->running_tasks && g_timer_is_active (priv->total_elapsed))
+                       g_timer_stop (priv->total_elapsed);
        }
 #endif
 
        priv->running_tasks = g_list_remove (priv->running_tasks, task);
 
-       if (!priv->running_tasks && g_timer_is_active (priv->total_elapsed))
-               g_timer_stop (priv->total_elapsed);
-
        g_mutex_unlock (&priv->task_mutex);
 }
 
@@ -643,8 +643,14 @@ tracker_extract_file (TrackerExtract      *extract,
 
                g_mutex_lock (&priv->task_mutex);
                priv->running_tasks = g_list_prepend (priv->running_tasks, task);
-               if (priv->running_tasks && !g_timer_is_active (priv->total_elapsed))
-                       g_timer_continue (priv->total_elapsed);
+
+#ifdef G_ENABLE_DEBUG
+               if (TRACKER_DEBUG_CHECK (STATISTICS)) {
+                       if (priv->running_tasks && !g_timer_is_active (priv->total_elapsed))
+                               g_timer_continue (priv->total_elapsed);
+               }
+#endif
+
                g_mutex_unlock (&priv->task_mutex);
 
                g_idle_add ((GSourceFunc) dispatch_task_cb, task);


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