diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2014-03-18 16:51:39 +0100 |
---|---|---|
committer | Simon McVittie <simon.mcvittie@collabora.co.uk> | 2014-03-27 10:32:14 +0000 |
commit | 4faf2f61a600fa9a133860185ccd3b6b079ef40d (patch) | |
tree | 4da29c364f14f164183ec44171e9cddff26a6e1b | |
parent | ebf9b7fe1423551d1bd04e8351fc9ccc035e9ce9 (diff) |
client-factory: create_channel() now takes a GVariant as props
-rw-r--r-- | libempathy/empathy-client-factory.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/libempathy/empathy-client-factory.c b/libempathy/empathy-client-factory.c index 16c09b7b..960039e1 100644 --- a/libempathy/empathy-client-factory.c +++ b/libempathy/empathy-client-factory.c @@ -38,18 +38,22 @@ static TpChannel * empathy_client_factory_create_channel (TpClientFactory *factory, TpConnection *conn, const gchar *path, - const GHashTable *properties, + GVariant *properties, GError **error) { const gchar *chan_type; - chan_type = tp_asv_get_string (properties, TP_PROP_CHANNEL_CHANNEL_TYPE); + chan_type = tp_vardict_get_string (properties, TP_PROP_CHANNEL_CHANNEL_TYPE); if (!tp_strdiff (chan_type, TP_IFACE_CHANNEL_TYPE_TEXT)) { - return TP_CHANNEL (empathy_tp_chat_new ( - TP_CLIENT_FACTORY (factory), conn, path, - properties)); + GHashTable *asv = tp_asv_from_vardict (properties); + EmpathyTpChat *chat; + + chat = empathy_tp_chat_new (TP_CLIENT_FACTORY (factory), conn, path, asv); + + g_hash_table_unref (asv); + return TP_CHANNEL (chat); } return chainup->create_channel (factory, conn, path, properties, error); |