From 92458decea01c13093f64fd5435c1e412bc70c71 Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Sat, 6 Mar 2010 17:15:10 +0000 Subject: [PATCH] and actuually send sync cancel too. (and inc counter to avoid race) SVN revision: 46913 --- src/modules/comp/e_mod_comp.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/modules/comp/e_mod_comp.c b/src/modules/comp/e_mod_comp.c index d2014d6f9..d9ab77520 100644 --- a/src/modules/comp/e_mod_comp.c +++ b/src/modules/comp/e_mod_comp.c @@ -797,7 +797,10 @@ _e_mod_comp_cb_update(E_Comp *c) { printf("nosync\n"); if (cw->bd) - ecore_x_e_comp_sync_cancel_send(cw->bd->client.win); + { + ecore_x_e_comp_sync_cancel_send(cw->bd->client.win); + ecore_x_sync_counter_inc(cw->counter, 1); + } } // ecore_x_window_hide(cw->win); // ecore_x_window_show(cw->win); @@ -998,6 +1001,11 @@ _e_mod_comp_object_del(void *data, void *obj) _e_mod_comp_win_render_queue(cw); if (obj == cw->bd) { + if (cw->counter) + { + ecore_x_e_comp_sync_cancel_send(cw->bd->client.win); + ecore_x_sync_counter_inc(cw->counter, 1); + } eina_hash_del(borders, e_util_winid_str_get(cw->bd->client.win), cw); cw->bd = NULL; // hmm - lockup?