forked from enlightenment/efl
ecore_wl2: Don't treat EINVAL as a recoverable condition
EINVAL is bad, we can't go on. If we treat it like it's not a fatal error we'll end up spinning on the fd and constantly retrying sends on the dead wayland connection. @fix
This commit is contained in:
parent
358a204491
commit
9646f8e9ec
|
@ -235,7 +235,7 @@ _cb_connect_data(void *data, Ecore_Fd_Handler *hdl)
|
||||||
if (ecore_main_fd_handler_active_get(hdl, ECORE_FD_READ))
|
if (ecore_main_fd_handler_active_get(hdl, ECORE_FD_READ))
|
||||||
{
|
{
|
||||||
ret = wl_display_dispatch(ewd->wl.display);
|
ret = wl_display_dispatch(ewd->wl.display);
|
||||||
if ((ret < 0) && ((errno != EAGAIN) && (errno != EINVAL)))
|
if ((ret < 0) && (errno != EAGAIN))
|
||||||
{
|
{
|
||||||
ERR("Received Fatal Error on Wayland Display");
|
ERR("Received Fatal Error on Wayland Display");
|
||||||
|
|
||||||
|
@ -252,7 +252,7 @@ _cb_connect_data(void *data, Ecore_Fd_Handler *hdl)
|
||||||
if (ret == 0)
|
if (ret == 0)
|
||||||
ecore_main_fd_handler_active_set(hdl, ECORE_FD_READ);
|
ecore_main_fd_handler_active_set(hdl, ECORE_FD_READ);
|
||||||
|
|
||||||
if ((ret < 0) && ((errno != EAGAIN) && (errno != EINVAL)))
|
if ((ret < 0) && (errno != EAGAIN))
|
||||||
{
|
{
|
||||||
ERR("Received Fatal Error on Wayland Display");
|
ERR("Received Fatal Error on Wayland Display");
|
||||||
|
|
||||||
|
@ -303,7 +303,7 @@ _cb_connect_idle(void *data)
|
||||||
return ECORE_CALLBACK_RENEW;
|
return ECORE_CALLBACK_RENEW;
|
||||||
|
|
||||||
err:
|
err:
|
||||||
if ((ret < 0) && ((errno != EAGAIN) && (errno != EINVAL)))
|
if ((ret < 0) && (errno != EAGAIN))
|
||||||
{
|
{
|
||||||
ERR("Wayland Socket Error: %s", strerror(errno));
|
ERR("Wayland Socket Error: %s", strerror(errno));
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue