chiark / gitweb /
libudev: return kernel provided devnode when asked before we handled any rules
[elogind.git] / libudev / libudev-device-private.c
index 7e5fcbc29375a1403c13e2cd893a21b01530afbf..a4b2fb01695b49c568516b2892b6278188db2590 100644 (file)
@@ -51,7 +51,7 @@ int udev_device_tag_index(struct udev_device *dev, struct udev_device *dev_old,
        struct udev_list_entry *list_entry;
        bool found;
 
-       if (add) {
+       if (add && dev_old != NULL) {
                /* delete possible left-over tags */
                udev_list_entry_foreach(list_entry, udev_device_get_tags_list_entry(dev_old)) {
                        const char *tag_old = udev_list_entry_get_name(list_entry);
@@ -177,19 +177,3 @@ int udev_device_delete_db(struct udev_device *udev_device)
        unlink(filename);
        return 0;
 }
-
-int udev_device_rename_db(struct udev_device *udev_device)
-{
-       struct udev *udev = udev_device_get_udev(udev_device);
-       char filename_old[UTIL_PATH_SIZE];
-       char filename[UTIL_PATH_SIZE];
-
-       if (strcmp(udev_device_get_sysname(udev_device), udev_device_get_sysname_old(udev_device)) == 0)
-               return 0;
-
-       util_strscpyl(filename_old, sizeof(filename_old), udev_get_dev_path(udev), "/.udev/db/",
-                     udev_device_get_subsystem(udev_device), ":", udev_device_get_sysname_old(udev_device), NULL);
-       util_strscpyl(filename, sizeof(filename), udev_get_dev_path(udev), "/.udev/db/",
-                     udev_device_get_subsystem(udev_device), ":", udev_device_get_sysname(udev_device), NULL);
-       return rename(filename_old, filename);
-}