empathy r1671 - trunk/libempathy
- From: xclaesse svn gnome org
- To: svn-commits-list gnome org
- Subject: empathy r1671 - trunk/libempathy
- Date: Tue, 11 Nov 2008 15:25:48 +0000 (UTC)
Author: xclaesse
Date: Tue Nov 11 15:25:48 2008
New Revision: 1671
URL: http://svn.gnome.org/viewvc/empathy?rev=1671&view=rev
Log:
EmpathyTpContactFactory: split on-ready code out of got_self_handle_cb
Modified:
trunk/libempathy/empathy-tp-contact-factory.c
Modified: trunk/libempathy/empathy-tp-contact-factory.c
==============================================================================
--- trunk/libempathy/empathy-tp-contact-factory.c (original)
+++ trunk/libempathy/empathy-tp-contact-factory.c Tue Nov 11 15:25:48 2008
@@ -60,6 +60,10 @@
PROP_READY
};
+/* Prototypes */
+static void tp_contact_factory_maybe_ready (EmpathyTpContactFactory *tp_factory);
+
+
static EmpathyContact *
tp_contact_factory_find_by_handle (EmpathyTpContactFactory *tp_factory,
guint handle)
@@ -727,22 +731,36 @@
GObject *tp_factory)
{
EmpathyTpContactFactoryPriv *priv = GET_PRIV (tp_factory);
+
+ if (error) {
+ DEBUG ("Failed to get self handles: %s", error->message);
+ return;
+ }
+
+ empathy_contact_set_handle (priv->user, handle);
+
+ tp_contact_factory_maybe_ready (EMPATHY_TP_CONTACT_FACTORY (tp_factory));
+}
+
+static void
+tp_contact_factory_maybe_ready (EmpathyTpContactFactory *tp_factory)
+{
+ EmpathyTpContactFactoryPriv *priv = GET_PRIV (tp_factory);
GList *l;
GArray *handle_needed;
GArray *id_needed;
GList *handle_needed_contacts = NULL;
GList *id_needed_contacts = NULL;
- if (error) {
- DEBUG ("Failed to get self handles: %s", error->message);
+ if (empathy_contact_get_handle (priv->user) == 0) {
+ DEBUG ("Connection not ready: still waiting for self handle");
return;
}
DEBUG ("Connection ready");
- empathy_contact_set_handle (priv->user, handle);
priv->ready = TRUE;
- g_object_notify (tp_factory, "ready");
+ g_object_notify (G_OBJECT (tp_factory), "ready");
/* Connect signals */
tp_cli_connection_interface_aliasing_connect_to_aliases_changed (priv->connection,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]