diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2021-06-03 00:53:58 +0900 |
---|---|---|
committer | Yu Watanabe <watanabe.yu+github@gmail.com> | 2021-06-04 15:51:39 +0900 |
commit | 1ddfb6cf29ad7bd4d2ebcc5049c7226579a8e2fb (patch) | |
tree | e475e7ebfaf703f36b23fef89917bddaee0f7c2e /src/udev/udev-node.c | |
parent | f3b393e951450a5983ec91f47451dc561a0d977d (diff) | |
download | systemd-1ddfb6cf29ad7bd4d2ebcc5049c7226579a8e2fb.tar.gz |
udev: use path_extract_directory() and path_equal()
Diffstat (limited to 'src/udev/udev-node.c')
-rw-r--r-- | src/udev/udev-node.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/udev/udev-node.c b/src/udev/udev-node.c index d5a341baaa..b4f2a89668 100644 --- a/src/udev/udev-node.c +++ b/src/udev/udev-node.c @@ -43,9 +43,9 @@ static int node_symlink(sd_device *dev, const char *node, const char *slink) { assert(node); assert(slink); - slink_dirname = dirname_malloc(slink); - if (!slink_dirname) - return log_oom(); + r = path_extract_directory(slink, &slink_dirname); + if (r < 0) + return log_device_debug_errno(dev, r, "Failed to get parent directory of '%s': %m", slink); /* use relative link */ r = path_make_relative(slink_dirname, node, &target); @@ -60,7 +60,7 @@ static int node_symlink(sd_device *dev, const char *node, const char *slink) { "Conflicting inode '%s' found, link to '%s' will not be created.", slink, node); if (readlink_malloc(slink, &buf) >= 0 && - streq(target, buf)) { + path_equal(target, buf)) { /* preserve link with correct target, do not replace node of other device */ log_device_debug(dev, "Preserve already existing symlink '%s' to '%s'", slink, target); |