chiark / gitweb /
udev: hwdb - try reading modalias for usb before falling back to the composed one
[elogind.git] / src / udev / udev-builtin-hwdb.c
index f1c0ca9cb1d6dda00c9f9f0a5bbd8fb0cc5607fc..d6aa96bb3dc2449682be4796d5ec4276b5fd6463 100644 (file)
@@ -102,13 +102,12 @@ static int udev_builtin_hwdb_search(struct udev_device *dev, struct udev_device
                 if (subsystem && !streq(dsubsys, subsystem))
                         continue;
 
+                modalias = udev_device_get_property_value(d, "MODALIAS");
+
                 /* the usb_device does not have a modalias, compose one */
-                if (streq(dsubsys, "usb"))
+                if (!modalias && streq(dsubsys, "usb"))
                         modalias = modalias_usb(d, s, sizeof(s));
 
-                if (!modalias)
-                        modalias = udev_device_get_property_value(d, "MODALIAS");
-
                 if (!modalias)
                         continue;