diff options
author | Xavier Claessens <xclaesse@gmail.com> | 2009-04-03 20:50:08 +0800 |
---|---|---|
committer | Xavier Claessens <xclaesse@src.gnome.org> | 2009-04-03 20:50:08 +0800 |
commit | f606d0b8d030a1a4ac928c283ccfe0507d0fbc6b (patch) | |
tree | 4eb256679361520160bc8a26121c688a16b5e495 /libempathy | |
parent | d6549f5d53123f131137b9248742afd5bb72afae (diff) | |
download | gsoc2013-empathy-f606d0b8d030a1a4ac928c283ccfe0507d0fbc6b.tar gsoc2013-empathy-f606d0b8d030a1a4ac928c283ccfe0507d0fbc6b.tar.gz gsoc2013-empathy-f606d0b8d030a1a4ac928c283ccfe0507d0fbc6b.tar.bz2 gsoc2013-empathy-f606d0b8d030a1a4ac928c283ccfe0507d0fbc6b.tar.lz gsoc2013-empathy-f606d0b8d030a1a4ac928c283ccfe0507d0fbc6b.tar.xz gsoc2013-empathy-f606d0b8d030a1a4ac928c283ccfe0507d0fbc6b.tar.zst gsoc2013-empathy-f606d0b8d030a1a4ac928c283ccfe0507d0fbc6b.zip |
Simplify how channel classes value is parsed. Fixes bug #577825
From: Xavier Claessens <xclaesse@gmail.com>
svn path=/trunk/; revision=2759
Diffstat (limited to 'libempathy')
-rw-r--r-- | libempathy/empathy-tp-contact-factory.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/libempathy/empathy-tp-contact-factory.c b/libempathy/empathy-tp-contact-factory.c index d83ba12a8..f72cc77d1 100644 --- a/libempathy/empathy-tp-contact-factory.c +++ b/libempathy/empathy-tp-contact-factory.c @@ -840,17 +840,13 @@ get_requestable_channel_classes_cb (TpProxy *connection, classes = g_value_get_boxed (value); for (i = 0; i < classes->len; i++) { - GValue class = {0,}; - GValue *chan_type, *handle_type; + GValueArray *class_struct; GHashTable *fixed_prop; + GValue *chan_type, *handle_type; GList *l; - g_value_init (&class, TP_STRUCT_TYPE_REQUESTABLE_CHANNEL_CLASS); - g_value_set_static_boxed (&class, g_ptr_array_index (classes, i)); - - dbus_g_type_struct_get (&class, - 0, &fixed_prop, - G_MAXUINT); + class_struct = g_ptr_array_index (classes, i); + fixed_prop = g_value_get_boxed (g_value_array_get_nth (class_struct, 0)); chan_type = g_hash_table_lookup (fixed_prop, TP_IFACE_CHANNEL ".ChannelType"); |