chiark / gitweb /
bus: NULL signatures are OK too
[elogind.git] / src / libsystemd-bus / bus-objects.c
index 90417fdca196493a4ea992416ea47492672e683a..c852ad6c424a20e7baceb3f7889b7072bc033770 100644 (file)
@@ -333,14 +333,13 @@ static int invoke_property_get(
         switch (v->x.property.signature[0]) {
 
         case SD_BUS_TYPE_STRING:
         switch (v->x.property.signature[0]) {
 
         case SD_BUS_TYPE_STRING:
-                p = *(char**) userdata;
-                if (!p)
-                        p = "";
+        case SD_BUS_TYPE_SIGNATURE:
+                p = strempty(*(char**) userdata);
                 break;
 
         case SD_BUS_TYPE_OBJECT_PATH:
                 break;
 
         case SD_BUS_TYPE_OBJECT_PATH:
-        case SD_BUS_TYPE_SIGNATURE:
                 p = *(char**) userdata;
                 p = *(char**) userdata;
+                assert(p);
                 break;
 
         default:
                 break;
 
         default: