chiark / gitweb /
sd-bus: check return value of vasprintf
authorDaniel Mack <daniel@zonque.org>
Tue, 7 Oct 2014 10:10:06 +0000 (12:10 +0200)
committerDaniel Mack <daniel@zonque.org>
Tue, 7 Oct 2014 10:10:06 +0000 (12:10 +0200)
Check for OOM situations when vasprintf() returns < 0 in bus_error_setfv().

Spotted by coverity.

src/libsystemd/sd-bus/bus-error.c

index abdfd73204f79f6eacd769f771aaa4bd38d2fd5a..5ca974a1910c7a5647dd186499876402f3af9aee 100644 (file)
@@ -194,8 +194,13 @@ int bus_error_setfv(sd_bus_error *e, const char *name, const char *format, va_li
                 return -ENOMEM;
         }
 
-        if (format)
-                vasprintf((char**) &e->message, format, ap);
+        if (format) {
+                int r;
+
+                r = vasprintf((char**) &e->message, format, ap);
+                if (r < 0)
+                        return -ENOMEM;
+        }
 
         e->_need_free = 1;