derekf pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=8b962d24acf192bd6c22de779c57eac73dd2f4db

commit 8b962d24acf192bd6c22de779c57eac73dd2f4db
Author: Derek Foreman <[email protected]>
Date:   Thu Mar 15 14:36:27 2018 -0500

    ee_wayland: Prevent extra commits
    
    It's possible that we unregister then reregister an animator so quickly
    that the ecore_evas idle enter/exiters haven't had a chance to run yet.
    In this case a render will come shortly anyway and we shouldn't use a
    'false' commit to kick off a frame callback.
    
    Silences an ERR and unmeasurably improves protocol utilization.
---
 src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c 
b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
index ae3b3dc06d..adadf9fabc 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
@@ -58,7 +58,8 @@ _ecore_evas_wl_common_animator_register(Ecore_Evas *ee)
 
    edata->frame = ecore_wl2_window_frame_callback_add(edata->win,
                                                       _anim_cb_tick, ee);
-   if (!ecore_wl2_window_pending_get(edata->win) && !ee->in_async_render)
+   if (!ecore_wl2_window_pending_get(edata->win) && !ee->in_async_render &&
+       !ee->animator_ticked && !ee->animator_ran)
      ecore_wl2_window_false_commit(edata->win);
    edata->ticking = EINA_TRUE;
 }

-- 


Reply via email to