Merge pull request #78 from martinetd/fix_device_remove

libinput: fix segfault when handling non-wlr device removal
This commit is contained in:
Drew DeVault 2017-08-12 09:22:29 -04:00 committed by GitHub
commit e2386043f6

View file

@ -112,6 +112,9 @@ static void handle_device_added(struct wlr_backend_state *state,
static void handle_device_removed(struct wlr_backend_state *state, static void handle_device_removed(struct wlr_backend_state *state,
struct libinput_device *device) { struct libinput_device *device) {
list_t *devices = libinput_device_get_user_data(device); list_t *devices = libinput_device_get_user_data(device);
if (!devices) {
return;
}
for (size_t i = 0; i < devices->length; i++) { for (size_t i = 0; i < devices->length; i++) {
struct wlr_input_device *wlr_device = devices->items[i]; struct wlr_input_device *wlr_device = devices->items[i];
wlr_log(L_DEBUG, "Removing %s [%d:%d]", wlr_device->name, wlr_log(L_DEBUG, "Removing %s [%d:%d]", wlr_device->name,