From aee196d512166578e24ee71fb19161eebee1e73b Mon Sep 17 00:00:00 2001 From: Wonki Kim Date: Wed, 13 Feb 2019 16:05:05 +0900 Subject: [PATCH] ecore_wl2: replace non-thread safe call with thread safe one this patch replaces non-thread safe call 'strerror' with thread safe one 'eina_error_msg_get' Change-Id: Idfc38bbfad547eead6d95dfd0ce33d3d4def8852 --- src/lib/ecore_wl2/ecore_wl2_display.c | 13 ++++++------- src/lib/ecore_wl2/ecore_wl2_input.c | 2 ++ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/lib/ecore_wl2/ecore_wl2_display.c b/src/lib/ecore_wl2/ecore_wl2_display.c index 1589d90..fc0ae9f 100644 --- a/src/lib/ecore_wl2/ecore_wl2_display.c +++ b/src/lib/ecore_wl2/ecore_wl2_display.c @@ -1056,7 +1056,7 @@ _begin_recovery_maybe(Ecore_Wl2_Display *ewd, int code) _recovery_timer_add(ewd); else if (!_server_displays) { - ERR("Wayland Socket Error: %s", strerror(errno)); + ERR("Wayland Socket Error: %s", eina_error_msg_get(errno)); _ecore_wl2_display_signal_exit(); } } @@ -1332,7 +1332,6 @@ _ecore_wl2_display_dispatch_error(Ecore_Wl2_Display *ewd) uint32_t ecode = 0, id = 0; const struct wl_interface *intf = NULL; int last_err; - char buffer[1024]; char *str; /* write out message about protocol error */ @@ -1348,15 +1347,15 @@ _ecore_wl2_display_dispatch_error(Ecore_Wl2_Display *ewd) { int _err = errno; if (last_err) _err = last_err; - str = strerror_r(_err, buffer, sizeof(buffer)); - ERR("Disconnected from a wayland compositor : error:(%d) %s(%s)", _err, buffer, str); + str = eina_error_msg_get(_err); + ERR("Disconnected from a wayland compositor : error:(%d) %s", _err, str); _ecore_wl2_signal_exit(); return; } else { - str = strerror_r(errno, buffer, sizeof(buffer)); - ERR("wayland socket error:(%d) %s(%s)", errno, buffer, str); + str = eina_error_msg_get(errno); + ERR("wayland socket error:(%d) %s", errno, str); abort(); } } @@ -1381,7 +1380,7 @@ ecore_wl2_display_sync(Ecore_Wl2_Display *display) if (_ecore_wl2_disconnected(last_dpy_err)) { errno = last_dpy_err; - ERR("Disconnected from a wayland compositor : %s", strerror(errno)); + ERR("Disconnected from a wayland compositor : %s", eina_error_msg_get(errno)); _ecore_wl2_signal_exit(); return; } diff --git a/src/lib/ecore_wl2/ecore_wl2_input.c b/src/lib/ecore_wl2/ecore_wl2_input.c index 306275f..634e623 100644 --- a/src/lib/ecore_wl2/ecore_wl2_input.c +++ b/src/lib/ecore_wl2/ecore_wl2_input.c @@ -2886,6 +2886,8 @@ EAPI Eina_List input = ecore_wl2_input_default_input_get(ewd); + if(!input) goto err; + while (!input->caps_update) { INF("Wait until wl_seat_capabilities_update is ready"); -- 2.7.4