diff options
author | Michael Meeks <michael@ximian.com> | 2004-03-08 10:29:16 +0000 |
---|---|---|
committer | Michael Meeks <michael@ximian.com> | 2004-03-08 10:29:16 +0000 |
commit | 9d633977d138cdb042cf01c82022e2c0390a7050 (patch) | |
tree | d03f0fb20b3d1885c9c810d233fd98774e56f359 | |
parent | 868dd4b4b0be082b86354b1f89ed9cffd5b8e193 (diff) |
2004-03-08 Michael Meeks <michael@ximian.com>
* dbus/dbus-message.c (dbus_message_iter_get_args_valist):
cleanup cut/paste/inefficiency.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | dbus/dbus-message.c | 54 |
2 files changed, 19 insertions, 40 deletions
@@ -1,3 +1,8 @@ +2004-03-08 Michael Meeks <michael@ximian.com> + + * dbus/dbus-message.c (dbus_message_iter_get_args_valist): + cleanup cut/paste/inefficiency. + 2004-03-01 David Zeuthen <david@fubar.dk> * dbus/dbus-string.c (_dbus_string_append_printf_valist): Fix a diff --git a/dbus/dbus-message.c b/dbus/dbus-message.c index 7c1ad1f3..1c7ebf24 100644 --- a/dbus/dbus-message.c +++ b/dbus/dbus-message.c @@ -2260,6 +2260,7 @@ dbus_message_iter_get_args_valist (DBusMessageIter *iter, { void **data; int *len, type; + dbus_bool_t err = FALSE; type = va_arg (var_args, int); data = va_arg (var_args, void *); @@ -2281,62 +2282,30 @@ dbus_message_iter_get_args_valist (DBusMessageIter *iter, switch (type) { case DBUS_TYPE_BYTE: - if (!dbus_message_iter_get_byte_array (iter, (unsigned char **)data, len)) - { - dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL); - goto out; - } + err = !dbus_message_iter_get_byte_array (iter, (unsigned char **)data, len); break; case DBUS_TYPE_BOOLEAN: - if (!dbus_message_iter_get_boolean_array (iter, (unsigned char **)data, len)) - { - dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL); - goto out; - } + err = !dbus_message_iter_get_boolean_array (iter, (unsigned char **)data, len); break; case DBUS_TYPE_INT32: - if (!dbus_message_iter_get_int32_array (iter, (dbus_int32_t **)data, len)) - { - dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL); - goto out; - } + err = !dbus_message_iter_get_int32_array (iter, (dbus_int32_t **)data, len); break; case DBUS_TYPE_UINT32: - if (!dbus_message_iter_get_uint32_array (iter, (dbus_uint32_t **)data, len)) - { - dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL); - goto out; - } + err = !dbus_message_iter_get_uint32_array (iter, (dbus_uint32_t **)data, len); break; #ifdef DBUS_HAVE_INT64 case DBUS_TYPE_INT64: - if (!dbus_message_iter_get_int64_array (iter, (dbus_int64_t **)data, len)) - { - dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL); - goto out; - } + err = !dbus_message_iter_get_int64_array (iter, (dbus_int64_t **)data, len); break; case DBUS_TYPE_UINT64: - if (!dbus_message_iter_get_uint64_array (iter, (dbus_uint64_t **)data, len)) - { - dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL); - goto out; - } + err = !dbus_message_iter_get_uint64_array (iter, (dbus_uint64_t **)data, len); break; #endif /* DBUS_HAVE_INT64 */ case DBUS_TYPE_DOUBLE: - if (!dbus_message_iter_get_double_array (iter, (double **)data, len)) - { - dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL); - goto out; - } + err = !dbus_message_iter_get_double_array (iter, (double **)data, len); break; case DBUS_TYPE_STRING: - if (!dbus_message_iter_get_string_array (iter, (char ***)data, len)) - { - dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL); - goto out; - } + err = !dbus_message_iter_get_string_array (iter, (char ***)data, len); break; case DBUS_TYPE_NIL: case DBUS_TYPE_ARRAY: @@ -2350,6 +2319,11 @@ dbus_message_iter_get_args_valist (DBusMessageIter *iter, dbus_set_error (error, DBUS_ERROR_NOT_SUPPORTED, NULL); goto out; } + if (err) + { + dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL); + goto out; + } } break; case DBUS_TYPE_DICT: |