From 464d45524bf6a34a574969a7b9dbae3137054d85 Mon Sep 17 00:00:00 2001 From: Szymon Janc Date: Tue, 7 Apr 2015 22:07:41 +0200 Subject: [PATCH] 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. --- gdbus/object.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gdbus/object.c b/gdbus/object.c index 0f42dadf3..96db51665 100644 --- a/gdbus/object.c +++ b/gdbus/object.c @@ -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); } -- 2.47.3