diff options
author | Danny Kukawka <danny.kukawka@web.de> | 2010-03-11 13:36:43 +0100 |
---|---|---|
committer | Danny Kukawka <danny.kukawka@web.de> | 2010-03-11 13:36:43 +0100 |
commit | d42ba7af860b08c9c9246703643d1110f6efc22c (patch) | |
tree | 79772ea13931403537acc6941059d71be23022f0 | |
parent | 96a4b208757d5bd922571c04f9b2d85bba8ed10f (diff) |
fix drm_compute_udi()
Fix drm_compute_udi() to prevent such udi's:
/org/freedesktop/Hal/devices/pci_1002_71c5_drm__null__card0
Use drm.dri_library only if the property is really set.
-rw-r--r-- | hald/linux/device.c | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/hald/linux/device.c b/hald/linux/device.c index 6ee20b86..c61cc690 100644 --- a/hald/linux/device.c +++ b/hald/linux/device.c @@ -557,12 +557,19 @@ drm_compute_udi (HalDevice *d) name = hal_util_get_last_element(dir); - /* generate e.g.: /org/freedesktop/Hal/devices/pci_8086_2a02_drm_i915_card0 */ - hald_compute_udi (udi, sizeof (udi), - "%s_drm_%s_%s", - hal_device_property_get_string (d, "info.parent"), - hal_device_property_get_string (d, "drm.dri_library"), - name); + if (hal_device_has_property (d, "drm.dri_library")) { + /* generate e.g.: /org/freedesktop/Hal/devices/pci_8086_2a02_drm_i915_card0 */ + hald_compute_udi (udi, sizeof (udi), + "%s_drm_%s_%s", + hal_device_property_get_string (d, "info.parent"), + hal_device_property_get_string (d, "drm.dri_library"), + name); + } else { + hald_compute_udi (udi, sizeof (udi), + "%s_drm_%s", + hal_device_property_get_string (d, "info.parent"), + name); + } hal_device_set_udi (d, udi); |