aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy
diff options
context:
space:
mode:
authorWill Thompson <will.thompson@collabora.co.uk>2011-08-09 05:43:42 +0800
committerWill Thompson <will.thompson@collabora.co.uk>2011-08-09 05:43:42 +0800
commit0f7e44ae1ea5a497083dc0982626b7f2cea7d36a (patch)
tree6a299c978382e7f77e6bb1a0f292bf4991579eb9 /libempathy
parent5bc1c756d01ac49513534b302238da7558f0d607 (diff)
downloadgsoc2013-empathy-0f7e44ae1ea5a497083dc0982626b7f2cea7d36a.tar
gsoc2013-empathy-0f7e44ae1ea5a497083dc0982626b7f2cea7d36a.tar.gz
gsoc2013-empathy-0f7e44ae1ea5a497083dc0982626b7f2cea7d36a.tar.bz2
gsoc2013-empathy-0f7e44ae1ea5a497083dc0982626b7f2cea7d36a.tar.lz
gsoc2013-empathy-0f7e44ae1ea5a497083dc0982626b7f2cea7d36a.tar.xz
gsoc2013-empathy-0f7e44ae1ea5a497083dc0982626b7f2cea7d36a.tar.zst
gsoc2013-empathy-0f7e44ae1ea5a497083dc0982626b7f2cea7d36a.zip
Blocking: don't critical if ContactBlockingCapabilities is missing
Haze has a deny list, and ostensibly implements ContactBlocking, but doesn't really implement that property. Naughty Haze hackers. They should be blocked.
Diffstat (limited to 'libempathy')
-rw-r--r--libempathy/empathy-tp-contact-list.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/libempathy/empathy-tp-contact-list.c b/libempathy/empathy-tp-contact-list.c
index d947e7284..11990a9a2 100644
--- a/libempathy/empathy-tp-contact-list.c
+++ b/libempathy/empathy-tp-contact-list.c
@@ -821,7 +821,19 @@ list_get_contact_blocking_capabilities_cb (TpProxy *conn,
EmpathyTpContactListPriv *priv = GET_PRIV (list);
TpContactBlockingCapabilities caps;
- g_return_if_fail (G_VALUE_HOLDS_UINT (value));
+ if (in_error != NULL) {
+ DEBUG ("Get(Blocking, ContactBlockingCapabilities) on %s failed: %s",
+ tp_proxy_get_object_path (conn),
+ in_error->message);
+ return;
+ }
+
+ if (!G_VALUE_HOLDS_UINT (value)) {
+ DEBUG ("Get(Blocking, ContactBlockingCapabilities) on %s returned a %s, not a uint",
+ tp_proxy_get_object_path (conn),
+ G_VALUE_TYPE_NAME (value));
+ return;
+ }
caps = g_value_get_uint (value);