diff options
author | Colin Guthrie <colin@mageia.org> | 2016-03-14 09:42:07 +0000 |
---|---|---|
committer | Colin Guthrie <colin@mageia.org> | 2016-03-14 09:43:03 +0000 |
commit | 5e1558f4a09e596561c9168384f2258e7c0718a1 (patch) | |
tree | 845cf59070d390d7eff75faf723cf79f411dd83f | |
parent | ed0b16e2792e2e7cd6591da053ef5f737736a98d (diff) |
device: Ensure we have sysfs path before comparing.
In some cases we do not have a udev device when setting up a unit
(certainly the code gracefully handles this). However, we do
then go on to compare the path via path_equal which will assert
if a null value is passed in.
See https://bugs.mageia.org/show_bug.cgi?id=17766
Not sure if this is the correct fix, but it avoids the crash
-rw-r--r-- | src/core/device.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/core/device.c b/src/core/device.c index d201dc5e4b..c64e01c2aa 100644 --- a/src/core/device.c +++ b/src/core/device.c @@ -318,7 +318,7 @@ static int device_setup_unit(Manager *m, struct udev_device *dev, const char *pa * the GC to have garbaged it. That's desired since the device * unit may have a dependency on the mount unit which was * added during the loading of the later. */ - if (u && DEVICE(u)->state == DEVICE_PLUGGED) { + if (sysfs && u && DEVICE(u)->state == DEVICE_PLUGGED) { /* This unit is in plugged state: we're sure it's * attached to a device. */ if (!path_equal(DEVICE(u)->sysfs, sysfs)) { |