chiark / gitweb /
udev: check return value of symlink
[elogind.git] / src / udev / udev-watch.c
index c27a280bd30ce510a5b626f82a9a810fec9d09ff..eebcee6555ad2f566cee8e020481f3dff88afcfc 100644 (file)
@@ -98,6 +98,7 @@ void udev_watch_begin(struct udev *udev, struct udev_device *dev)
 {
         char filename[UTIL_PATH_SIZE];
         int wd;
+        int r;
 
         if (inotify_fd < 0)
                 return;
@@ -113,7 +114,9 @@ void udev_watch_begin(struct udev *udev, struct udev_device *dev)
         snprintf(filename, sizeof(filename), "/run/udev/watch/%d", wd);
         mkdir_parents(filename, 0755);
         unlink(filename);
-        symlink(udev_device_get_id_filename(dev), filename);
+        r = symlink(udev_device_get_id_filename(dev), filename);
+        if (r < 0)
+                log_error("Failed to create symlink: %m");
 
         udev_device_set_watch_handle(dev, wd);
 }