aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/empathy-call-window.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/empathy-call-window.c b/src/empathy-call-window.c
index 21a2e68a5..99e1cc8ff 100644
--- a/src/empathy-call-window.c
+++ b/src/empathy-call-window.c
@@ -1331,7 +1331,10 @@ empathy_call_window_dispose (GObject *object)
}
if (priv->handler != NULL)
- g_object_unref (priv->handler);
+ {
+ empathy_call_handler_stop_call (priv->handler);
+ g_object_unref (priv->handler);
+ }
priv->handler = NULL;
if (priv->pipeline != NULL)
@@ -2667,6 +2670,10 @@ static void
empathy_call_window_hangup_cb (gpointer object,
EmpathyCallWindow *window)
{
+ EmpathyCallWindowPriv *priv = GET_PRIV (window);
+
+ empathy_call_handler_stop_call (priv->handler);
+
if (empathy_call_window_disconnected (window))
gtk_widget_destroy (GTK_WIDGET (window));
}