From c66702b9e8a785bed3b4ca01fb18e5d9f6af6bd6 Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Tue, 4 Jul 2017 13:33:30 +0100 Subject: [PATCH 08/19] _dbus_message_iter_open_signature: Clarify why this is not leaky The same assertion appears closer to the top of the function, and there is no opportunity for it to have become false here. Signed-off-by: Simon McVittie --- dbus/dbus-message.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dbus/dbus-message.c b/dbus/dbus-message.c index 6d9dd55f..f66ac1a2 100644 --- a/dbus/dbus-message.c +++ b/dbus/dbus-message.c @@ -2538,6 +2538,9 @@ _dbus_message_iter_open_signature (DBusMessageRealIter *real) real->sig_refcount = 1; + /* If this assertion failed, then str would be neither stored in u.writer + * nor freed by this function, resulting in a memory leak. */ + _dbus_assert (real->u.writer.type_str == NULL); _dbus_type_writer_add_types (&real->u.writer, str, _dbus_string_get_length (str)); return TRUE; -- 2.13.2