diff options
-rw-r--r-- | NEWS | 5 | ||||
-rw-r--r-- | telepathy-glib/account.c | 6 |
2 files changed, 10 insertions, 1 deletions
@@ -1,7 +1,10 @@ telepathy-glib 0.21.3 (UNRELEASED) ================================== -... +Fixes: + +• Don't crash if the AccountManager returns an incorrect type for the + Avatar (fd.o #69849, Simon) telepathy-glib 0.21.2 (2013-09-24) ================================== diff --git a/telepathy-glib/account.c b/telepathy-glib/account.c index a342fd41d..24dbd001a 100644 --- a/telepathy-glib/account.c +++ b/telepathy-glib/account.c @@ -3559,6 +3559,12 @@ _tp_account_got_avatar_cb (TpProxy *proxy, DEBUG ("Failed to get avatar: %s", error->message); g_simple_async_result_set_from_error (result, error); } + else if (!G_VALUE_HOLDS (out_Value, TP_STRUCT_TYPE_AVATAR)) + { + DEBUG ("Avatar had wrong type: %s", G_VALUE_TYPE_NAME (out_Value)); + g_simple_async_result_set_error (result, TP_ERROR, TP_ERROR_CONFUSED, + "Incorrect type for Avatar property"); + } else { avatar = g_value_get_boxed (out_Value); |