[Bug 20831] ContactInfo: implement and undraft

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Feb 22 18:35:22 CET 2010


http://bugs.freedesktop.org/show_bug.cgi?id=20831





--- Comment #12 from Simon McVittie <simon.mcvittie at collabora.co.uk>  2010-02-22 09:35:21 PST ---
I merged Gabble 0.9.5 into the branch, for which I had to make the following
three non-trivial edits, and basically rewrite vcard_node_changed() (from
master) to cope with the more complex data structure used in the contact-info
branch.

Do these merges look OK?

--- a/extensions/Connection_Interface_Contact_Info.xml
+++ b/extensions/Connection_Interface_Contact_Info.xml
@@@ -162,7 -162,7 +162,7 @@@ Foundation, Inc., 51 Franklin Street, F
          name="Contact_Info"/>
      </tp:mapping>

--    <signal name="ContactInfoChanged"
tp:name-for-bindings="ContactInfoChanged">
++    <signal name="ContactInfoChanged"
tp:name-for-bindings="Contact_Info_Changed">
        <arg name="Contact" type="u" tp:type="Contact_Handle">
          <tp:docstring>
            An integer handle for the contact whose info has changed.

--- a/src/conn-contact-info.c
+++ b/src/conn-contact-info.c
 +static GSList *
 +_insert_edit_info (GSList *edits,
...
 +  for (p = field_params; *p != NULL; ++p)
 +    {
-       // params should be in the format type=foo
-       gchar *delim = strchr(*p, '=');
++      /* params should be in the format type=foo */
++      gchar *delim = strchr (*p, '=');
 +      if (!delim)
 +        continue;
 +
 +      g_hash_table_insert (edit_info->to_edit,
-           g_ascii_strup(delim + 1, -1),
++          g_ascii_strup (delim + 1, -1),
 +          NULL);
 +    }

--- a/src/connection.c
+++ b/src/connection.c
    static TpDBusPropertiesMixinIfaceImpl prop_interfaces[] = {
--        { GABBLE_IFACE_OLPC_GADGET,
++        /* 0 */ { GABBLE_IFACE_OLPC_GADGET,
            conn_olpc_gadget_properties_getter,
            NULL,
            olpc_gadget_props,
          },
--        { TP_IFACE_CONNECTION_INTERFACE_LOCATION,
++        /* 1 */ { TP_IFACE_CONNECTION_INTERFACE_LOCATION,
            conn_location_properties_getter,
            conn_location_properties_setter,
            location_props,
          },
--        { TP_IFACE_CONNECTION_INTERFACE_AVATARS,
++        /* 2 */ { TP_IFACE_CONNECTION_INTERFACE_AVATARS,
            conn_avatars_properties_getter,
            NULL,
            NULL,
          },
-         { GABBLE_IFACE_CONNECTION_INTERFACE_CONTACT_INFO,
 -        { GABBLE_IFACE_CONNECTION_INTERFACE_GABBLE_DECLOAK,
++        /* 3 */ { GABBLE_IFACE_CONNECTION_INTERFACE_CONTACT_INFO,
 +          conn_contact_info_properties_getter,
 +          NULL,
 +          NULL,
 +        },
++        /* 4 */ { GABBLE_IFACE_CONNECTION_INTERFACE_GABBLE_DECLOAK,
+           tp_dbus_properties_mixin_getter_gobject_properties,
+           tp_dbus_properties_mixin_setter_gobject_properties,
+           decloak_props,
+         },

vcard/overlapping-sets.py is currently failing, which I suspect is probably
because my rewrite of vcard_node_changed() is faulty; I'll put that here for
review when I've fixed it.


-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.



More information about the telepathy-bugs mailing list