diff options
author | Emilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk> | 2011-05-27 03:43:46 +0800 |
---|---|---|
committer | Emilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk> | 2011-05-27 04:02:51 +0800 |
commit | adcea193bbc45b44312b82742612ea7e9a0d786d (patch) | |
tree | 9dfe75ddd86747e1df43ed43af6975fd3333add9 /src | |
parent | 010589a72de8ad5276539c8130e900e037c9d187 (diff) | |
download | gsoc2013-empathy-adcea193bbc45b44312b82742612ea7e9a0d786d.tar gsoc2013-empathy-adcea193bbc45b44312b82742612ea7e9a0d786d.tar.gz gsoc2013-empathy-adcea193bbc45b44312b82742612ea7e9a0d786d.tar.bz2 gsoc2013-empathy-adcea193bbc45b44312b82742612ea7e9a0d786d.tar.lz gsoc2013-empathy-adcea193bbc45b44312b82742612ea7e9a0d786d.tar.xz gsoc2013-empathy-adcea193bbc45b44312b82742612ea7e9a0d786d.tar.zst gsoc2013-empathy-adcea193bbc45b44312b82742612ea7e9a0d786d.zip |
Clear audio_output when the call ends
So we create a new one when redialing instead of reusing it.
Diffstat (limited to 'src')
-rw-r--r-- | src/empathy-call-window.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/empathy-call-window.c b/src/empathy-call-window.c index 0f2df0938..98993fc7d 100644 --- a/src/empathy-call-window.c +++ b/src/empathy-call-window.c @@ -1745,6 +1745,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; @@ -2023,6 +2027,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)) { |