- factory = empathy_contact_factory_dup_singleton ();
- account = empathy_channel_get_account (channel);
-
- contact = empathy_contact_factory_get_from_handle (factory, account,
- handle);
-
- tube_dispatch = empathy_tube_dispatch_new (operation);
-
- approval->contact = contact;
- approval->tube_dispatch = tube_dispatch;
-
- empathy_contact_call_when_ready (contact,
- EMPATHY_CONTACT_READY_NAME, event_manager_tube_got_contact_name_cb,
- approval, NULL, G_OBJECT (manager));
-
- g_object_unref (factory);
- g_object_unref (account);
+ approval->tube_dispatch = empathy_tube_dispatch_new (operation);
+ connection = tp_channel_borrow_connection (channel);
+ factory = empathy_tp_contact_factory_dup_singleton (connection);
+ empathy_tp_contact_factory_get_from_handle (factory, handle,
+ event_manager_tube_got_contact_cb, approval, NULL, G_OBJECT (manager));