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
This commit is contained in:
Stefan Schmidt 2014-09-04 10:35:05 +02:00
parent a797d1a8ef
commit 7d4c063fbb
1 changed files with 5 additions and 2 deletions

View File

@ -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))