chiark / gitweb /
keymap: Asus -- do not overwrite explicitely kernel driver defined keys
[elogind.git] / src / udev / udev-event.c
index ef9fc61c641fea622daced336540ff70e185a72a..3db2cb7165a512d7de30cbafad7829e91b22d384 100644 (file)
@@ -784,7 +784,7 @@ int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules,
         if (udev_device_get_subsystem(dev) == NULL)
                 return -1;
 
-        if (strcmp(udev_device_get_action(dev), "remove") == 0) {
+        if (streq(udev_device_get_action(dev), "remove")) {
                 udev_device_read_db(dev, NULL);
                 udev_device_delete_db(dev);
                 udev_device_tag_index(dev, NULL, false);
@@ -812,8 +812,8 @@ int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules,
                 udev_rules_apply_to_event(rules, event, sigmask);
 
                 /* rename a new network interface, if needed */
-                if (udev_device_get_ifindex(dev) > 0 && strcmp(udev_device_get_action(dev), "add") == 0 &&
-                    event->name != NULL && strcmp(event->name, udev_device_get_sysname(dev)) != 0) {
+                if (udev_device_get_ifindex(dev) > 0 && streq(udev_device_get_action(dev), "add") &&
+                    event->name != NULL && !streq(event->name, udev_device_get_sysname(dev))) {
                         char syspath[UTIL_PATH_SIZE];
                         char *pos;
 
@@ -838,6 +838,8 @@ int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules,
                 }
 
                 if (major(udev_device_get_devnum(dev)) > 0) {
+                        bool apply;
+
                         /* remove/update possible left-over symlinks from old database entry */
                         if (event->dev_db != NULL)
                                 udev_node_update_old_links(dev, event->dev_db);
@@ -861,8 +863,8 @@ int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules,
                                 }
                         }
 
-                        udev_node_add(dev, event->owner_set || event->group_set || event->mode_set,
-                                      event->mode, event->uid, event->gid);
+                        apply = streq(udev_device_get_action(dev), "add") || event->owner_set || event->group_set || event->mode_set;
+                        udev_node_add(dev, apply, event->mode, event->uid, event->gid);
                 }
 
                 /* preserve old, or get new initialization timestamp */