summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--telepathy-glib/call-channel.c7
-rw-r--r--telepathy-glib/simple-client-factory.c5
2 files changed, 7 insertions, 5 deletions
diff --git a/telepathy-glib/call-channel.c b/telepathy-glib/call-channel.c
index 6e88061fd..81a2a49eb 100644
--- a/telepathy-glib/call-channel.c
+++ b/telepathy-glib/call-channel.c
@@ -77,7 +77,7 @@ struct _TpCallChannelPrivate
GHashTable *state_details;
TpCallStateReason *state_reason;
gboolean hardware_streaming;
- /* TpHandle -> TpCallMemberFlags */
+ /* TpContact -> TpCallMemberFlags */
GHashTable *members;
gboolean initial_audio;
gboolean initial_video;
@@ -270,14 +270,15 @@ _tp_call_members_convert_array (TpConnection *connection,
TpContact *contact;
/* The contact is supposed to already exists */
- contact = _tp_connection_lookup_contact (connection, handle);
+ contact = tp_connection_dup_contact_if_possible (connection,
+ handle, NULL);
if (contact == NULL)
{
DEBUG ("No TpContact found for handle %u", handle);
continue;
}
- g_ptr_array_add (result, g_object_ref (contact));
+ g_ptr_array_add (result, contact);
}
return result;
diff --git a/telepathy-glib/simple-client-factory.c b/telepathy-glib/simple-client-factory.c
index 57fb9aff3..fa8fd0431 100644
--- a/telepathy-glib/simple-client-factory.c
+++ b/telepathy-glib/simple-client-factory.c
@@ -849,9 +849,10 @@ tp_simple_client_factory_ensure_contact (TpSimpleClientFactory *self,
g_return_val_if_fail (handle != 0, NULL);
g_return_val_if_fail (identifier != NULL, NULL);
- contact = _tp_connection_lookup_contact (connection, handle);
+ contact = tp_connection_dup_contact_if_possible (connection,
+ handle, identifier);
if (contact != NULL)
- return g_object_ref (contact);
+ return contact;
contact = TP_SIMPLE_CLIENT_FACTORY_GET_CLASS (self)->create_contact (self,
connection, handle, identifier);