X-Git-Url: https://git.0d.be/?p=empathy.git;a=blobdiff_plain;f=libempathy%2Fempathy-tp-file.c;h=913c27bbf84adefc8fda78ab72b7ca6740850533;hp=bcd35a257e1e786346edf3b4c1d8d9fa8ca99466;hb=9b9fcd3ce3b9c7fdc62836821d83377bec58d0a5;hpb=dcd115814f40de200c3cf4da6693de84489592ac diff --git a/libempathy/empathy-tp-file.c b/libempathy/empathy-tp-file.c index bcd35a25..913c27bb 100644 --- a/libempathy/empathy-tp-file.c +++ b/libempathy/empathy-tp-file.c @@ -508,13 +508,21 @@ tp_file_check_if_ready (EmpathyTpFile *tp_file) static void tp_file_got_contact_cb (EmpathyTpContactFactory *factory, - GList *contacts, + EmpathyContact *contact, + const GError *error, gpointer user_data, GObject *weak_object) { EmpathyTpFile *tp_file = EMPATHY_TP_FILE (weak_object); - tp_file->priv->contact = g_object_ref (contacts->data); + if (error) + { + DEBUG ("Error: %s", error->message); + empathy_tp_file_close (tp_file); + return; + } + + tp_file->priv->contact = g_object_ref (contact); tp_file_check_if_ready (tp_file); } @@ -633,8 +641,8 @@ tp_file_constructor (GType type, tp_file_get_all_cb, NULL, NULL, file_obj); handle = tp_channel_get_handle (tp_file->priv->channel, NULL); - empathy_tp_contact_factory_get_from_handles (tp_file->priv->factory, - 1, &handle, tp_file_got_contact_cb, NULL, NULL, file_obj); + empathy_tp_contact_factory_get_from_handle (tp_file->priv->factory, + handle, tp_file_got_contact_cb, NULL, NULL, file_obj); return file_obj; }