From: Tom Gundersen Date: Wed, 22 Apr 2015 17:01:50 +0000 (+0200) Subject: libudev-device: fix lazy loading of devlinks, properties and tags X-Git-Tag: v226.4~1^2~437 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=9a2ee18b7172fae066f173017c10bad1cfb5913d libudev-device: fix lazy loading of devlinks, properties and tags If the underlying device has not read in the properties yet, the generation will be 0, so make sure we trigger the reading at least once. --- diff --git a/src/libsystemd/sd-device/device-enumerator-private.h b/src/libsystemd/sd-device/device-enumerator-private.h index 543aed4ff..adc5af795 100644 --- a/src/libsystemd/sd-device/device-enumerator-private.h +++ b/src/libsystemd/sd-device/device-enumerator-private.h @@ -30,6 +30,9 @@ int device_enumerator_add_device(sd_device_enumerator *enumerator, sd_device *de int device_enumerator_add_match_is_initialized(sd_device_enumerator *enumerator); sd_device *device_enumerator_get_first(sd_device_enumerator *enumerator); sd_device *device_enumerator_get_next(sd_device_enumerator *enumerator); + bool properties_read:1; + bool tags_read:1; + bool devlinks_read:1; #define FOREACH_DEVICE_AND_SUBSYSTEM(enumerator, device) \ for (device = device_enumerator_get_first(enumerator); \