summaryrefslogtreecommitdiff
path: root/telepathy-glib/base-connection-manager.c
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2010-05-05 13:33:48 +0100
committerAndre Moreira Magalhaes (andrunko) <andre.magalhaes@collabora.co.uk>2010-06-29 20:31:57 -0300
commitdb301466e838a67049d36ec73d324230c9170f98 (patch)
tree9abb263d4eef9ffdc2e6e7b82a073af53bed5a3e /telepathy-glib/base-connection-manager.c
parent51055389a10b4d0182c3da683a6ef56a59fdaa90 (diff)
TpBaseConnectionManager: implement the keys of Protocols
Diffstat (limited to 'telepathy-glib/base-connection-manager.c')
-rw-r--r--telepathy-glib/base-connection-manager.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/telepathy-glib/base-connection-manager.c b/telepathy-glib/base-connection-manager.c
index ca137c006..ff8abd269 100644
--- a/telepathy-glib/base-connection-manager.c
+++ b/telepathy-glib/base-connection-manager.c
@@ -400,19 +400,22 @@ tp_base_connection_manager_get_property (GObject *object,
{
GHashTable *map = g_hash_table_new_full (g_str_hash, g_str_equal,
g_free, (GDestroyNotify) g_hash_table_unref);
- GHashTable *empty = tp_asv_new (NULL, NULL);
GHashTableIter iter;
- gpointer name;
+ gpointer name, protocol;
g_hash_table_iter_init (&iter, self->priv->protocols);
- while (g_hash_table_iter_next (&iter, &name, NULL))
+ while (g_hash_table_iter_next (&iter, &name, &protocol))
{
- g_hash_table_insert (map, g_strdup (name),
- g_hash_table_ref (empty));
+ GHashTable *props;
+
+ g_object_get (protocol,
+ "immutable-properties", &props,
+ NULL);
+
+ g_hash_table_insert (map, g_strdup (name), props);
}
- g_hash_table_unref (empty);
g_value_take_boxed (value, map);
}
break;