dbus-send: Reassure the compiler that secondary_type is initialized
authorSimon McVittie <smcv@collabora.com>
Mon, 25 Sep 2017 15:19:39 +0000 (16:19 +0100)
committerSimon McVittie <smcv@collabora.com>
Mon, 25 Sep 2017 15:59:23 +0000 (16:59 +0100)
It's initialized to a non-trivial value whenever container_type
is DBUS_TYPE_DICT_ENTRY, and subsequently only used if
container_type is DBUS_TYPE_DICT_ENTRY, but Debian's gcc 7.2.0-7
doesn't seem to be able to infer that any more, causing build failure
under -Werror=maybe-uninitialized.

Signed-off-by: Simon McVittie <smcv@collabora.com>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=102979
Reviewed-by: Philip Withnall <withnall@endlessm.com>
tools/dbus-send.c

index 0dc1f5b..235e58e 100644 (file)
@@ -464,6 +464,7 @@ main (int argc, char *argv[])
       DBusMessageIter container_iter;
 
       type = DBUS_TYPE_INVALID;
+      secondary_type = DBUS_TYPE_INVALID;
       arg = argv[i++];
       c = strchr (arg, ':');
 
@@ -544,6 +545,7 @@ main (int argc, char *argv[])
        }
       else if (container_type == DBUS_TYPE_DICT_ENTRY)
        {
+         _dbus_assert (secondary_type != DBUS_TYPE_INVALID);
          append_dict (target_iter, type, secondary_type, c);
        }
       else