From 08bad995975ee05c294ebbb9c51028d250478ce9 Mon Sep 17 00:00:00 2001 From: Stefan Schmidt Date: Thu, 17 Apr 2014 16:16:57 +0200 Subject: [PATCH] wcore_wl: Handle errors on wayland display fd Cancel the callback if we receive an error on the wayland display file descriptor. --- src/lib/ecore_wayland/ecore_wl.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/lib/ecore_wayland/ecore_wl.c b/src/lib/ecore_wayland/ecore_wl.c index 49a282f..9a728b2 100644 --- a/src/lib/ecore_wayland/ecore_wl.c +++ b/src/lib/ecore_wayland/ecore_wl.c @@ -535,7 +535,14 @@ _ecore_wl_cb_handle_data(void *data, Ecore_Fd_Handler *hdl) if (!(ewd = data)) return ECORE_CALLBACK_RENEW; - /* FIXME: This should also catch ECORE_FD_ERROR and exit */ + if (ecore_main_fd_handler_active_get(hdl, ECORE_FD_ERROR)) + { + ERR("Received error on wayland display fd"); + _ecore_wl_fatal_error = EINA_TRUE; + _ecore_wl_signal_exit(); + + return ECORE_CALLBACK_CANCEL; + } /* wl_display_dispatch_pending(ewd->wl.display); */ -- 2.7.4