discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=949a0eeb1555cc8c8cc5267c2a7ee88e65c37d68
commit 949a0eeb1555cc8c8cc5267c2a7ee88e65c37d68 Author: Mike Blumenkrantz <[email protected]> Date: Wed Jul 30 00:52:20 2014 -0400 move comp_x pixmap dirty setting to post_resize idler this fixes a rare race condition which can only be triggered by the tiling module fix T993 --- src/bin/e_comp_x.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c index ab29b2e..2326722 100644 --- a/src/bin/e_comp_x.c +++ b/src/bin/e_comp_x.c @@ -573,6 +573,9 @@ _e_comp_x_post_client_idler_cb(void *d EINA_UNUSED) ecore_x_window_prop_card32_set(e_client_util_win_get(ec), ECORE_X_ATOM_NET_WM_WINDOW_OPACITY, &opacity, 1); /* flag gets unset in property cb to avoid fetching opacity after we just set it */ } + if (ec->post_resize && (!ecore_x_present_exists())) + e_pixmap_dirty(ec->pixmap); + e_comp_object_render_update_del(ec->frame); ec->post_move = 0; ec->post_resize = 0; } @@ -862,8 +865,6 @@ _e_comp_x_evas_resize_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_i } ec->post_resize = 1; - if (!ecore_x_present_exists()) - e_pixmap_dirty(ec->pixmap); e_comp_object_render_update_del(ec->frame); _e_comp_x_post_client_idler_add(ec); } --
