derekf pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=57d5b5921e8a4a05f4a1b468f1cfed74d28b95f9

commit 57d5b5921e8a4a05f4a1b468f1cfed74d28b95f9
Author: Derek Foreman <der...@osg.samsung.com>
Date:   Wed Aug 30 14:53:46 2017 -0500

    ecore_wl2: Kill the wl idle enterer
    
    We do flushes when we need them now, so we don't need this somewhat
    non deterministic flush mechanism anymore.
    
    Anything that breaks as a result of this should be fixable by adding an
    ecore_wl2_display_flush() somewhere appropriate.
---
 src/lib/ecore_wl2/ecore_wl2_display.c | 41 -----------------------------------
 src/lib/ecore_wl2/ecore_wl2_private.h |  1 -
 2 files changed, 42 deletions(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_display.c 
b/src/lib/ecore_wl2/ecore_wl2_display.c
index b11b3af6c6..4d081cc5c3 100644
--- a/src/lib/ecore_wl2/ecore_wl2_display.c
+++ b/src/lib/ecore_wl2/ecore_wl2_display.c
@@ -10,7 +10,6 @@
 static Eina_Hash *_server_displays = NULL;
 static Eina_Hash *_client_displays = NULL;
 
-static Eina_Bool _cb_connect_idle(void *data);
 static Eina_Bool _cb_connect_data(void *data, Ecore_Fd_Handler *hdl);
 static Eina_Bool _ecore_wl2_display_connect(Ecore_Wl2_Display *ewd, Eina_Bool 
sync);
 
@@ -450,8 +449,6 @@ _recovery_timer_add(Ecore_Wl2_Display *ewd)
    Ecore_Wl2_Window *window;
 
    eina_hash_free_buckets(ewd->globals);
-   ecore_idle_enterer_del(ewd->idle_enterer);
-   ewd->idle_enterer = NULL;
 
    ecore_main_fd_handler_del(ewd->fd_hdl);
    ewd->fd_hdl = NULL;
@@ -541,40 +538,6 @@ _cb_globals_hash_del(void *data)
    free(global);
 }
 
-static Eina_Bool
-_cb_connect_idle(void *data)
-{
-   Ecore_Wl2_Display *ewd = data;
-   int ret = 0, code;
-
-   ret = wl_display_get_error(ewd->wl.display);
-   code = errno;
-   if (ret < 0) goto err;
-
-   ret = wl_display_dispatch_pending(ewd->wl.display);
-   code = errno;
-   if (ret < 0) goto err;
-
-   ret = wl_display_flush(ewd->wl.display);
-   code = errno;
-   if ((ret < 0) && (code == EAGAIN))
-     ecore_main_fd_handler_active_set(ewd->fd_hdl,
-                                      (ECORE_FD_READ | ECORE_FD_WRITE));
-
-   return ECORE_CALLBACK_RENEW;
-
-err:
-   if ((ret < 0) && (code != EAGAIN))
-     {
-        ewd->idle_enterer = NULL;
-        _begin_recovery_maybe(ewd, code);
-
-        return ECORE_CALLBACK_CANCEL;
-     }
-
-   return ECORE_CALLBACK_RENEW;
-}
-
 static Ecore_Wl2_Global *
 _ecore_wl2_global_find(Ecore_Wl2_Display *ewd, const char *interface)
 {
@@ -697,8 +660,6 @@ _ecore_wl2_display_connect(Ecore_Wl2_Display *ewd, 
Eina_Bool sync)
                                ECORE_FD_READ | ECORE_FD_WRITE | ECORE_FD_ERROR,
                                _cb_connect_data, ewd, NULL, NULL);
 
-   ewd->idle_enterer = ecore_idle_enterer_add(_cb_connect_idle, ewd);
-
    _ecore_wl2_display_event(ewd, ECORE_WL2_EVENT_CONNECT);
    ecore_wl2_display_flush(ewd);
    return EINA_TRUE;
@@ -721,8 +682,6 @@ _ecore_wl2_display_cleanup(Ecore_Wl2_Display *ewd)
    EINA_INLIST_FOREACH_SAFE(ewd->outputs, tmp, output)
      _ecore_wl2_output_del(output);
 
-   if (ewd->idle_enterer) ecore_idle_enterer_del(ewd->idle_enterer);
-
    if (ewd->fd_hdl) ecore_main_fd_handler_del(ewd->fd_hdl);
 
    eina_hash_free(ewd->globals);
diff --git a/src/lib/ecore_wl2/ecore_wl2_private.h 
b/src/lib/ecore_wl2/ecore_wl2_private.h
index c71ae676c4..95afcd5f48 100644
--- a/src/lib/ecore_wl2/ecore_wl2_private.h
+++ b/src/lib/ecore_wl2/ecore_wl2_private.h
@@ -100,7 +100,6 @@ struct _Ecore_Wl2_Display
 
    struct xkb_context *xkb_context;
 
-   Ecore_Idle_Enterer *idle_enterer;
    Ecore_Fd_Handler *fd_hdl;
 
    Eina_Hash *globals;

-- 


Reply via email to