From a9f6738541b98e591e51bd321902acc5c8200d9b Mon Sep 17 00:00:00 2001 From: Emilio Pozuelo Monfort Date: Thu, 26 May 2011 20:43:46 +0100 Subject: Clear audio_output when the call ends So we create a new one when redialing instead of reusing it. --- src/empathy-call-window.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/empathy-call-window.c b/src/empathy-call-window.c index ec06c39fe..d9a7bb1b6 100644 --- a/src/empathy-call-window.c +++ b/src/empathy-call-window.c @@ -1767,6 +1767,10 @@ empathy_call_window_reset_pipeline (EmpathyCallWindow *self) g_signal_handlers_disconnect_by_func (priv->audio_input_adj, empathy_call_window_mic_volume_changed_cb, self); + if (priv->audio_output != NULL) + g_object_unref (priv->audio_output); + priv->audio_output = NULL; + if (priv->video_tee != NULL) g_object_unref (priv->video_tee); priv->video_tee = NULL; @@ -2045,6 +2049,7 @@ empathy_call_window_get_audio_sink_pad (EmpathyCallWindow *self) if (priv->audio_output == NULL) { priv->audio_output = empathy_audio_sink_new (); + g_object_ref_sink (priv->audio_output); if (!gst_bin_add (GST_BIN (priv->pipeline), priv->audio_output)) { -- cgit v1.2.3