They're identically laid-out structs but let's use the right type to search for our desired value.
Signed-off-by: Peter Hutterer <[email protected]> --- hw/xfree86/common/xf86Xinput.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/hw/xfree86/common/xf86Xinput.c b/hw/xfree86/common/xf86Xinput.c index 538b110..e31aab3 100644 --- a/hw/xfree86/common/xf86Xinput.c +++ b/hw/xfree86/common/xf86Xinput.c @@ -1541,23 +1541,19 @@ void xf86InputEnableVTProbe(void) { int i, is_auto = 0; - InputOption *option = NULL; DeviceIntPtr pdev; for (i = 0; i < new_input_devices_count; i++) { InputInfoPtr pInfo = new_input_devices[i]; + const char *value = xf86findOptionValue(pInfo->options, "_source"); is_auto = 0; - nt_list_for_each_entry(option, pInfo->options, list.next) { - const char *key = input_option_get_key(option); - const char *value = input_option_get_value(option); + if (value && + (strcmp(value, "server/hal") == 0 || + strcmp(value, "server/udev") == 0 || + strcmp(value, "server/wscons") == 0)) + is_auto = 1; - if (strcmp(key, "_source") == 0 && - (strcmp(value, "server/hal") == 0 || - strcmp(value, "server/udev") == 0 || - strcmp(value, "server/wscons") == 0)) - is_auto = 1; - } xf86NewInputDevice(pInfo, &pdev, (!is_auto || (is_auto && xf86Info.autoEnableDevices))); -- 2.9.3 _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: https://lists.x.org/mailman/listinfo/xorg-devel
