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-25 19:26:20 +0000 |
commit | d3d49d5550bc703d5c8399a3d4530ba825e736c9 (patch) | |
tree | a6cec822556741aad7671e5806b5a5230bcae22c | |
parent | c2df90d2bace0dc01ff33fd2cac5c2c3fb188bfe (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); |