gdbus: Fix crash in g_dbus_create_error_valist

Passing NULL format parameter to vsnprintf results in invalid argument
error on glibc. But with some other libc libraries (musl and uClibc)
this results in dereferencing NULL pointer and crash due to
segmentation fault.
This commit is contained in:
Szymon Janc 2015-04-07 22:07:41 +02:00 committed by Marcel Holtmann
parent 2f75b13ecd
commit 97abe1751d
1 changed files with 4 additions and 1 deletions

View File

@ -1412,7 +1412,10 @@ DBusMessage *g_dbus_create_error_valist(DBusMessage *message, const char *name,
{
char str[1024];
vsnprintf(str, sizeof(str), format, args);
if (format)
vsnprintf(str, sizeof(str), format, args);
else
str[0] = '\0';
return dbus_message_new_error(message, name, str);
}