stefan pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=7d4c063fbb70d6083467ec3a5971fe596113fc31
commit 7d4c063fbb70d6083467ec3a5971fe596113fc31 Author: Stefan Schmidt <[email protected]> Date: Thu Sep 4 10:35:05 2014 +0200 eldbus: Only call va_end() if the signature does not match after rewrite If git log is right this is patch number 4 for this CID. Lets hope we handle all cases for starting and ending va now. CID 1039883 --- src/lib/eldbus/eldbus_message.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/lib/eldbus/eldbus_message.c b/src/lib/eldbus/eldbus_message.c index 820afed..d6b18d3 100644 --- a/src/lib/eldbus/eldbus_message.c +++ b/src/lib/eldbus/eldbus_message.c @@ -710,8 +710,11 @@ eldbus_message_iter_get_and_next(Eldbus_Message_Iter *iter, char signature, ...) { if (signature == '(') signature = 'r'; else if (signature == '{') signature = 'e'; - va_end(vl); - EINA_SAFETY_ON_FALSE_RETURN_VAL(type == signature, EINA_FALSE); + if (type != signature) + { + va_end(vl); + return EINA_FALSE; + } } if (dbus_type_is_basic(type)) --
