discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=35622614d0ee6510692bb3f4a9fddd260e12ba79
commit 35622614d0ee6510692bb3f4a9fddd260e12ba79 Author: Derek Foreman <derek.foreman.sams...@gmail.com> Date: Tue Jul 31 17:02:39 2018 -0400 ecore_evas: Make sure a manual render does a manual render Summary: If we call ecore_evas_manual_render() during an async render, it does nothing. This is harmful if we've added render post callbacks during that async render and expect them to fire. Force a sync and another render if we're in an async render. ref T7156 Depends on D6714 Reviewers: zmike Reviewed By: zmike Subscribers: cedric, #committers, zmike Tags: #efl Maniphest Tasks: T7156 Differential Revision: https://phab.enlightenment.org/D6715 --- src/lib/ecore_evas/ecore_evas.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/lib/ecore_evas/ecore_evas.c b/src/lib/ecore_evas/ecore_evas.c index e6cb647c0c..004896de90 100644 --- a/src/lib/ecore_evas/ecore_evas.c +++ b/src/lib/ecore_evas/ecore_evas.c @@ -2649,6 +2649,15 @@ ecore_evas_manual_render(Ecore_Evas *ee) ecore_evas_animator_tick(ee, NULL, t); } + else + { + /* We want to ensure a manual render actually takes place, + * even if we were in the middle of an async render. This + * will ensure that any post render callbacks added + * specifically for this manual render will fire. + */ + ecore_evas_render_wait(ee); + } if (ee->engine.func->fn_render) { --