and actuually send sync cancel too. (and inc counter to avoid race)

SVN revision: 46913
This commit is contained in:
Carsten Haitzler 2010-03-06 17:15:10 +00:00
parent 6716e77d14
commit 92458decea
1 changed files with 9 additions and 1 deletions

View File

@ -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?