[next] telepathy-glib: ensure that values received from callback are not NULL
Guillaume Desmottes
gdesmott at kemper.freedesktop.org
Tue May 27 01:24:20 PDT 2014
Module: telepathy-glib
Branch: next
Commit: 6f1776d368bb9b207e4c9ed58894d91810d41b7c
URL: http://cgit.freedesktop.org/telepathy/telepathy-glib/commit/?id=6f1776d368bb9b207e4c9ed58894d91810d41b7c
Author: Guillaume Desmottes <guillaume.desmottes at collabora.co.uk>
Date: Wed May 21 10:50:40 2014 +0200
ensure that values received from callback are not NULL
Make clang happier and is safer anyway.
https://bugs.freedesktop.org/show_bug.cgi?id=79006
---
telepathy-glib/account.c | 10 ++++++----
telepathy-glib/base-room-config.c | 2 ++
telepathy-glib/connection.c | 1 +
telepathy-glib/debug-client.c | 2 ++
telepathy-glib/gnio-util.c | 2 ++
5 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/telepathy-glib/account.c b/telepathy-glib/account.c
index 8fd7c55..c245b6b 100644
--- a/telepathy-glib/account.c
+++ b/telepathy-glib/account.c
@@ -3306,21 +3306,23 @@ tp_account_get_supersedes (TpAccount *self)
static void
_tp_account_got_avatar_cb (TpProxy *proxy,
- const GValue *out_Value,
+ const GValue *value,
const GError *error,
gpointer user_data,
GObject *weak_object)
{
GTask *task = user_data;
+ g_return_if_fail (error != NULL || value != NULL);
+
if (error != NULL)
{
DEBUG ("Failed to get avatar: %s", error->message);
g_task_return_error (task, g_error_copy (error));
}
- else if (!G_VALUE_HOLDS (out_Value, TP_STRUCT_TYPE_AVATAR))
+ else if (!G_VALUE_HOLDS (value, TP_STRUCT_TYPE_AVATAR))
{
- DEBUG ("Avatar had wrong type: %s", G_VALUE_TYPE_NAME (out_Value));
+ DEBUG ("Avatar had wrong type: %s", G_VALUE_TYPE_NAME (value));
g_task_return_new_error (task, TP_ERROR, TP_ERROR_CONFUSED,
"Incorrect type for Avatar property");
}
@@ -3328,7 +3330,7 @@ _tp_account_got_avatar_cb (TpProxy *proxy,
{
/* we just put the GValueArray in the task, and use a non-trivial
* finish function to split it into data and MIME type */
- g_task_return_pointer (task, g_value_dup_boxed (out_Value),
+ g_task_return_pointer (task, g_value_dup_boxed (value),
(GDestroyNotify) tp_value_array_free);
}
diff --git a/telepathy-glib/base-room-config.c b/telepathy-glib/base-room-config.c
index 1973b97..8055068 100644
--- a/telepathy-glib/base-room-config.c
+++ b/telepathy-glib/base-room-config.c
@@ -759,6 +759,8 @@ validate_property_type (
static TpDBusPropertiesMixinIfaceInfo *iface_info = NULL;
TpDBusPropertiesMixinPropInfo *prop_info;
+ g_return_val_if_fail (value != NULL, FALSE);
+
if (G_UNLIKELY (iface_info == NULL))
iface_info = tp_svc_interface_get_dbus_properties_info (
TP_TYPE_SVC_CHANNEL_INTERFACE_ROOM_CONFIG1);
diff --git a/telepathy-glib/connection.c b/telepathy-glib/connection.c
index 93c1a11..f88611f 100644
--- a/telepathy-glib/connection.c
+++ b/telepathy-glib/connection.c
@@ -525,6 +525,7 @@ tp_connection_get_rcc_cb (TpProxy *proxy,
goto finally;
}
+ g_return_if_fail (value != NULL);
g_assert (self->priv->capabilities == NULL);
if (!G_VALUE_HOLDS (value, TP_ARRAY_TYPE_REQUESTABLE_CHANNEL_CLASS_LIST))
diff --git a/telepathy-glib/debug-client.c b/telepathy-glib/debug-client.c
index 4eb2811..4350db2 100644
--- a/telepathy-glib/debug-client.c
+++ b/telepathy-glib/debug-client.c
@@ -268,6 +268,8 @@ got_enabled_cb (
{
TpDebugClient *self = TP_DEBUG_CLIENT (proxy);
+ g_return_if_fail (error != NULL || value != NULL);
+
if (error != NULL)
{
tp_proxy_invalidate (proxy, error);
diff --git a/telepathy-glib/gnio-util.c b/telepathy-glib/gnio-util.c
index d3d5f73..994428c 100644
--- a/telepathy-glib/gnio-util.c
+++ b/telepathy-glib/gnio-util.c
@@ -82,6 +82,8 @@ tp_g_socket_address_from_variant (TpSocketAddressType type,
{
GSocketAddress *addr;
+ g_return_val_if_fail (variant != NULL, NULL);
+
switch (type)
{
#ifdef HAVE_GIO_UNIX
More information about the telepathy-commits
mailing list