devilhorns pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=67460e2d78c88f525f15620ae7a583b21fc997d4
commit 67460e2d78c88f525f15620ae7a583b21fc997d4 Author: Derek Foreman <der...@osg.samsung.com> Date: Wed Apr 22 14:32:16 2015 -0400 ecore_drm: Don't crash if a device is assigned a bad output Summary: If an input device is assigned via udev to an output that we can't find we just assign it to the first output instead. Reviewers: zmike, devilhorns Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2408 --- src/lib/ecore_drm/ecore_drm_evdev.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/src/lib/ecore_drm/ecore_drm_evdev.c b/src/lib/ecore_drm/ecore_drm_evdev.c index 9f46516..04275fd 100644 --- a/src/lib/ecore_drm/ecore_drm_evdev.c +++ b/src/lib/ecore_drm/ecore_drm_evdev.c @@ -65,20 +65,16 @@ _device_output_set(Ecore_Drm_Evdev *edev) DBG("Device Has Output Name: %s", oname); EINA_LIST_FOREACH(input->dev->outputs, l, output) - { - if ((output->name) && (!strcmp(output->name, oname))) - { - edev->output = output; - break; - } - } - } - else - { - if (!(output = eina_list_nth(input->dev->outputs, 0))) return; - edev->output = output; + if ((output->name) && (!strcmp(output->name, oname))) break; } + if (!output) + output = eina_list_nth(input->dev->outputs, 0); + + if (!output) return; + + edev->output = output; + if (libinput_device_has_capability(edev->device, LIBINPUT_DEVICE_CAP_POINTER)) { --