09bc8d360a
Resolves: #1973856,#1998509,#2000927,#2003002,#2003031,#2003130,#2005024,#2009237
37 lines
1.2 KiB
Diff
37 lines
1.2 KiB
Diff
From 506dc32b2428936d67e9cf1a034d6b63dbc1cbb0 Mon Sep 17 00:00:00 2001
|
|
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
|
Date: Wed, 1 Sep 2021 04:14:42 +0900
|
|
Subject: [PATCH] udev-node: stack directory must exist when adding device node
|
|
symlink
|
|
|
|
(cherry picked from commit 46070dbf26435ba0def099121f46a6253f3f19b6)
|
|
|
|
Related: #2005024
|
|
---
|
|
src/udev/udev-node.c | 11 ++++++-----
|
|
1 file changed, 6 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/src/udev/udev-node.c b/src/udev/udev-node.c
|
|
index 7cc9ee3670..4496a2bd9b 100644
|
|
--- a/src/udev/udev-node.c
|
|
+++ b/src/udev/udev-node.c
|
|
@@ -161,12 +161,13 @@ static int link_find_prioritized(sd_device *dev, bool add, const char *stackdir,
|
|
|
|
dir = opendir(stackdir);
|
|
if (!dir) {
|
|
- if (errno == ENOENT) {
|
|
- *ret = TAKE_PTR(target);
|
|
- return !!*ret;
|
|
- }
|
|
+ if (add) /* The stack directory must exist. */
|
|
+ return -errno;
|
|
+ if (errno != ENOENT)
|
|
+ return -errno;
|
|
|
|
- return -errno;
|
|
+ *ret = NULL;
|
|
+ return 0;
|
|
}
|
|
|
|
r = device_get_device_id(dev, &id);
|