]> git.0d.be Git - empathy.git/blobdiff - libempathy-gtk/empathy-contact-widget.c
Make sure we don't expect contact id and handle to be directly ready. Add some _run_u...
[empathy.git] / libempathy-gtk / empathy-contact-widget.c
index 0c3f40dc19cd623880c6f92fc2a6da17035bebb1..c0b4596de1e0699df926be63ada4039d8235b385 100644 (file)
@@ -306,9 +306,7 @@ static void
 contact_widget_set_contact (EmpathyContactWidget *information,
                            EmpathyContact        *contact)
 {
-       if (contact == information->contact ||
-           (contact && information->contact &&
-            empathy_contact_equal (contact, information->contact))) {
+       if (contact == information->contact) {
                return;
        }
 
@@ -512,6 +510,10 @@ contact_widget_change_contact (EmpathyContactWidget *information)
        }
 
        if (contact) {
+               empathy_contact_run_until_ready (contact,
+                                                EMPATHY_CONTACT_READY_HANDLE |
+                                                EMPATHY_CONTACT_READY_ID,
+                                                NULL);
                contact_widget_set_contact (information, contact);
                g_object_unref (contact);
        }