summaryrefslogtreecommitdiffstats
path: root/dbus/dbus-message.c
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@redhat.com>2004-05-23 18:09:46 +0000
committerKristian Høgsberg <krh@redhat.com>2004-05-23 18:09:46 +0000
commit14d9ef5be9667e3c1ed8447146d38d40b7ddaa62 (patch)
tree9580eb26efdfe6f44fbd05cfa190d2f0853ce90f /dbus/dbus-message.c
parente431887e8476b1897f3eef4a90bfb928abb2f07b (diff)
Patch from Timo Teräs <ext-timo.teras@nokia.com> (#614):
* dbus/dbus-message.c (dbus_message_iter_get_args_valist): Swap operands to && so we call dbus_message_iter_next () for the last argument also.
Diffstat (limited to 'dbus/dbus-message.c')
-rw-r--r--dbus/dbus-message.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/dbus/dbus-message.c b/dbus/dbus-message.c
index 03a3822a..98c0d1d1 100644
--- a/dbus/dbus-message.c
+++ b/dbus/dbus-message.c
@@ -2180,7 +2180,7 @@ dbus_message_iter_get_args_valist (DBusMessageIter *iter,
spec_type = first_arg_type;
i = 0;
- while (spec_type != 0)
+ while (spec_type != DBUS_TYPE_INVALID)
{
msg_type = dbus_message_iter_get_arg_type (iter);
@@ -2379,9 +2379,9 @@ dbus_message_iter_get_args_valist (DBusMessageIter *iter,
_dbus_warn ("Unknown field type %d\n", spec_type);
goto out;
}
-
+
spec_type = va_arg (var_args, int);
- if (spec_type != 0 && !dbus_message_iter_next (iter))
+ if (!dbus_message_iter_next (iter) && spec_type != DBUS_TYPE_INVALID)
{
dbus_set_error (error, DBUS_ERROR_INVALID_ARGS,
"Message has only %d arguments, but more were expected", i);
@@ -7000,9 +7000,6 @@ verify_test_message (DBusMessage *message)
_dbus_assert_not_reached ("bool array had wrong values");
dbus_free (our_boolean_array);
-
- if (!dbus_message_iter_next (&iter))
- _dbus_assert_not_reached ("Reached end of arguments");
if (dbus_message_iter_get_arg_type (&iter) != DBUS_TYPE_DICT)
_dbus_assert_not_reached ("not dict type");