diff options
-rw-r--r-- | libempathy/empathy-tp-call.c | 4 | ||||
-rw-r--r-- | libempathy/empathy-tp-group.c | 2 | ||||
-rw-r--r-- | src/empathy-call-window.c | 4 | ||||
-rw-r--r-- | src/empathy-status-icon.c | 4 |
4 files changed, 9 insertions, 5 deletions
diff --git a/libempathy/empathy-tp-call.c b/libempathy/empathy-tp-call.c index 473004c2d..ae5f83f1c 100644 --- a/libempathy/empathy-tp-call.c +++ b/libempathy/empathy-tp-call.c @@ -498,7 +498,7 @@ tp_call_constructor (GType type, if (empathy_tp_group_is_ready (priv->group)) tp_call_group_ready_cb (call); else - g_signal_connect_swapped (priv->group, "ready", + g_signal_connect_swapped (priv->group, "notify::ready", G_CALLBACK (tp_call_group_ready_cb), call); /* Start stream engine */ @@ -616,7 +616,7 @@ empathy_tp_call_class_init (EmpathyTpCallClass *klass) g_object_class_install_property (object_class, PROP_CHANNEL, g_param_spec_object ("channel", "channel", "channel", - TELEPATHY_CHAN_TYPE, + TP_TYPE_CHANNEL, G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB)); g_object_class_install_property (object_class, PROP_CONTACT, diff --git a/libempathy/empathy-tp-group.c b/libempathy/empathy-tp-group.c index 675854b27..f09d8ce1b 100644 --- a/libempathy/empathy-tp-group.c +++ b/libempathy/empathy-tp-group.c @@ -967,7 +967,7 @@ empathy_tp_group_get_invitation (EmpathyTpGroup *group, } if (remote_contact) { - *remote_contact = contact; + *remote_contact = g_object_ref (contact); } return invitation; diff --git a/src/empathy-call-window.c b/src/empathy-call-window.c index f8a199ca9..2533d7743 100644 --- a/src/empathy-call-window.c +++ b/src/empathy-call-window.c @@ -386,8 +386,8 @@ call_window_update (EmpathyCallWindow *window) call_window_finalize (window); } - - g_object_unref (contact); + if (contact) + g_object_unref (contact); } GtkWidget * diff --git a/src/empathy-status-icon.c b/src/empathy-status-icon.c index 0cafbfdd8..18788fb7d 100644 --- a/src/empathy-status-icon.c +++ b/src/empathy-status-icon.c @@ -393,6 +393,10 @@ status_icon_call_filter_new_channel (EmpathyFilter *filter, event->user_data = group; g_free (msg); } + + if (contact) { + g_object_unref (contact); + } } static void |