]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
sd-device: get_properties_{nulstr,strv} - don't recreate the buffer unnecessarily
authorTom Gundersen <teg@jklm.no>
Fri, 3 Apr 2015 19:05:42 +0000 (21:05 +0200)
committerTom Gundersen <teg@jklm.no>
Fri, 3 Apr 2015 20:17:41 +0000 (22:17 +0200)
src/libsystemd/sd-device/device-private.c

index 81b0b6dde68cfc3e0abd45ab3f2727f3e856fe6f..2add6bb0de03e483876434ff8d3bac3e884b2bf8 100644 (file)
@@ -643,6 +643,9 @@ static int device_update_properties_bufs(sd_device *device) {
 
         assert(device);
 
+        if (!device->properties_buf_outdated)
+                return 0;
+
         FOREACH_DEVICE_PROPERTY(device, prop, val) {
                 size_t len = 0;
 
@@ -679,11 +682,9 @@ int device_get_properties_nulstr(sd_device *device, const uint8_t **nulstr, size
         assert(nulstr);
         assert(len);
 
-        if (device->properties_buf_outdated) {
-                r = device_update_properties_bufs(device);
-                if (r < 0)
-                        return r;
-        }
+        r = device_update_properties_bufs(device);
+        if (r < 0)
+                return r;
 
         *nulstr = device->properties_nulstr;
         *len = device->properties_nulstr_len;