From db6e4622af6768a9366ad7fd322cb9215715578b Mon Sep 17 00:00:00 2001 From: "Carsten Haitzler (Rasterman)" Date: Mon, 26 Feb 2018 00:35:20 +0900 Subject: elput - don't segv on shutdown when libinput dispatch happens to free lib --- src/lib/elput/elput_input.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/lib/elput/elput_input.c') diff --git a/src/lib/elput/elput_input.c b/src/lib/elput/elput_input.c index 08f06cbfd8..06da3d0149 100644 --- a/src/lib/elput/elput_input.c +++ b/src/lib/elput/elput_input.c @@ -312,7 +312,7 @@ _process_events(Elput_Input *ei) { struct libinput_event *event; - while ((event = libinput_get_event(ei->lib))) + while ((ei->lib) && (event = libinput_get_event(ei->lib))) { _process_event(event); libinput_event_destroy(event); @@ -326,7 +326,7 @@ _cb_input_dispatch(void *data, Ecore_Fd_Handler *hdlr EINA_UNUSED) ei = data; - if (libinput_dispatch(ei->lib) != 0) + if ((ei->lib) && (libinput_dispatch(ei->lib) != 0)) WRN("libinput failed to dispatch events"); _process_events(ei); -- cgit v1.2.1