diff options
author | Jonathan Tellier <jonathan.tellier@gmail.com> | 2009-08-07 21:19:19 +0800 |
---|---|---|
committer | jtellier <jonathan.tellier@collabora.co.uk> | 2009-08-07 21:19:19 +0800 |
commit | afb052be39a6ea5e3f5858f69aaf47d27995ec3e (patch) | |
tree | faeab86aae0ca5ec5e516d583166914404a2ec8a | |
parent | 044a71d3ffd3788c1f2f8060448b536eff62d6f0 (diff) | |
download | gsoc2013-empathy-afb052be39a6ea5e3f5858f69aaf47d27995ec3e.tar gsoc2013-empathy-afb052be39a6ea5e3f5858f69aaf47d27995ec3e.tar.gz gsoc2013-empathy-afb052be39a6ea5e3f5858f69aaf47d27995ec3e.tar.bz2 gsoc2013-empathy-afb052be39a6ea5e3f5858f69aaf47d27995ec3e.tar.lz gsoc2013-empathy-afb052be39a6ea5e3f5858f69aaf47d27995ec3e.tar.xz gsoc2013-empathy-afb052be39a6ea5e3f5858f69aaf47d27995ec3e.tar.zst gsoc2013-empathy-afb052be39a6ea5e3f5858f69aaf47d27995ec3e.zip |
Setting priv->bus_message_source_id to 0 to make sure that
g_source_remove is not called twice on it.
-rw-r--r-- | src/empathy-call-window.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/empathy-call-window.c b/src/empathy-call-window.c index 7bca4a564..e8266591e 100644 --- a/src/empathy-call-window.c +++ b/src/empathy-call-window.c @@ -1133,7 +1133,10 @@ empathy_call_window_finalize (GObject *object) } if (priv->bus_message_source_id != 0) - g_source_remove (priv->bus_message_source_id); + { + g_source_remove (priv->bus_message_source_id); + priv->bus_message_source_id = 0; + } /* free any data held directly by the object here */ g_mutex_free (priv->lock); @@ -1190,7 +1193,11 @@ empathy_call_window_reset_pipeline (EmpathyCallWindow *self) return TRUE; if (priv->bus_message_source_id != 0) - g_source_remove (priv->bus_message_source_id); + { + g_source_remove (priv->bus_message_source_id); + priv->bus_message_source_id = 0; + } + state_change_return = gst_element_set_state (priv->pipeline, GST_STATE_NULL); if (state_change_return == GST_STATE_CHANGE_SUCCESS || @@ -1703,7 +1710,10 @@ empathy_call_window_delete_cb (GtkWidget *widget, GdkEvent*event, if (priv->pipeline != NULL) { if (priv->bus_message_source_id != 0) - g_source_remove (priv->bus_message_source_id); + { + g_source_remove (priv->bus_message_source_id); + priv->bus_message_source_id = 0; + } gst_element_set_state (priv->pipeline, GST_STATE_NULL); } |