37 lines
1.4 KiB
Diff
37 lines
1.4 KiB
Diff
|
From 7b175c402c0da5a8cc6fdbfc005ec43c0f5d00d4 Mon Sep 17 00:00:00 2001
|
||
|
From: Colin Guthrie <colin@mageia.org>
|
||
|
Date: Mon, 14 Mar 2016 09:42:07 +0000
|
||
|
Subject: [PATCH 2/8] 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
|
||
|
|
||
|
(cherry picked from commit 5e1558f4a09e596561c9168384f2258e7c0718a1)
|
||
|
Resolves: #1321392
|
||
|
---
|
||
|
src/core/device.c | 2 +-
|
||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/src/core/device.c b/src/core/device.c
|
||
|
index d201dc5..c64e01c 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)) {
|
||
|
--
|
||
|
2.7.4
|
||
|
|