diff options
author | Michael Schroeder <mls@novell.com> | 2010-08-23 16:13:13 +0200 |
---|---|---|
committer | Danny Kukawka <danny.kukawka@web.de> | 2010-08-23 16:13:13 +0200 |
commit | fc9571c07a81aba8a8fdaa8014d4034b6456d203 (patch) | |
tree | fa0a3d0c1474596f63232f0f782cef513c85f8d6 | |
parent | 6f16321da13f6a7cbd9c424ddba2e727e434fa25 (diff) |
fix hal segfault
Fixed hal segfault. It crashes because strlen() gets called with a
NULL pointer (ppdev_compute_udi calls hal_util_get_last_element
with a NULL pointer).
bnc#556485
-rw-r--r-- | hald/linux/device.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/hald/linux/device.c b/hald/linux/device.c index 8570d461..401dc44f 100644 --- a/hald/linux/device.c +++ b/hald/linux/device.c @@ -2287,9 +2287,10 @@ ppdev_compute_udi (HalDevice *d) gchar udi[256]; const char *name; - name = hal_util_get_last_element( hal_device_property_get_string(d, "linux.device_file")); + name = hal_device_property_get_string (d, "linux.device_file"); if (name) { + name = hal_util_get_last_element (name); hald_compute_udi (udi, sizeof (udi), "/org/freedesktop/Hal/devices/ppdev_%s", name); } else { hald_compute_udi (udi, sizeof (udi), "/org/freedesktop/Hal/devices/ppdev"); |