[gnome-logs/wip/batching: 1/2] Remove idle handler when finalizing GlEventView



commit 5ee1c0b517b1b9ec8c609a504d5e1c5079e99a2d
Author: David King <davidk gnome org>
Date:   Thu Feb 20 12:20:54 2014 +0000

    Remove idle handler when finalizing GlEventView

 src/gl-eventview.c |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)
---
diff --git a/src/gl-eventview.c b/src/gl-eventview.c
index d270399..4e4db8a 100644
--- a/src/gl-eventview.c
+++ b/src/gl-eventview.c
@@ -281,6 +281,7 @@ insert_devices_idle (GlEventView *view)
                 priv->results_listbox = NULL;
                 priv->results = NULL;
 
+                priv->insert_idle_id = 0;
                 return G_SOURCE_REMOVE;
             }
         }
@@ -289,6 +290,7 @@ insert_devices_idle (GlEventView *view)
     }
     else
     {
+        priv->insert_idle_id = 0;
         return G_SOURCE_REMOVE;
     }
 }
@@ -364,6 +366,7 @@ insert_security_idle (GlEventView *view)
                 priv->results_listbox = NULL;
                 priv->results = NULL;
 
+                priv->insert_idle_id = 0;
                 return G_SOURCE_REMOVE;
             }
         }
@@ -372,6 +375,7 @@ insert_security_idle (GlEventView *view)
     }
     else
     {
+        priv->insert_idle_id = 0;
         return G_SOURCE_REMOVE;
     }
 }
@@ -442,6 +446,7 @@ insert_simple_idle (GlEventView *view)
                 priv->results_listbox = NULL;
                 priv->results = NULL;
 
+                priv->insert_idle_id = 0;
                 return G_SOURCE_REMOVE;
             }
         }
@@ -450,6 +455,7 @@ insert_simple_idle (GlEventView *view)
     }
     else
     {
+        priv->insert_idle_id = 0;
         return G_SOURCE_REMOVE;
     }
 }
@@ -518,6 +524,7 @@ insert_cmdline_idle (GlEventView *view)
                 priv->results_listbox = NULL;
                 priv->results = NULL;
 
+                priv->insert_idle_id = 0;
                 return G_SOURCE_REMOVE;
             }
         }
@@ -526,6 +533,7 @@ insert_cmdline_idle (GlEventView *view)
     }
     else
     {
+        priv->insert_idle_id = 0;
         return G_SOURCE_REMOVE;
     }
 }
@@ -909,6 +917,11 @@ gl_event_view_finalize (GObject *object)
     GlEventView *view = GL_EVENT_VIEW (object);
     GlEventViewPrivate *priv = gl_event_view_get_instance_private (view);
 
+    if (priv->insert_idle_id)
+    {
+        g_source_remove (priv->insert_idle_id);
+    }
+
     g_clear_pointer (&priv->search_text, g_free);
     g_clear_pointer (&priv->pending_results, g_queue_free);
 }


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