forked from enlightenment/enlightenment
special case: we don't care for shape of argb windows, don't fetch it.
SVN revision: 46272
This commit is contained in:
parent
e6746ce456
commit
61531ed0d3
|
@ -474,19 +474,24 @@ _e_mod_comp_win_update(E_Comp_Win *cw)
|
||||||
}
|
}
|
||||||
ecore_x_ungrab();
|
ecore_x_ungrab();
|
||||||
|
|
||||||
/* watch out: rects is just freed at the function end!
|
if (cw->argb)
|
||||||
* adding any premature "return" will make it leak!
|
rects = NULL;
|
||||||
*/
|
else
|
||||||
rects = ecore_x_window_shape_rectangles_get(cw->win, &rects_num);
|
|
||||||
if (!_e_mod_comp_win_shaped_check(cw, rects, rects_num))
|
|
||||||
{
|
{
|
||||||
free(rects);
|
/* watch out: rects is just freed at the function end!
|
||||||
rects = NULL;
|
* adding any premature "return" will make it leak!
|
||||||
}
|
*/
|
||||||
if ((rects) && (!cw->shaped))
|
rects = ecore_x_window_shape_rectangles_get(cw->win, &rects_num);
|
||||||
{
|
if (!_e_mod_comp_win_shaped_check(cw, rects, rects_num))
|
||||||
cw->shaped = 1;
|
{
|
||||||
cw->shape_changed = 1;
|
free(rects);
|
||||||
|
rects = NULL;
|
||||||
|
}
|
||||||
|
if ((rects) && (!cw->shaped))
|
||||||
|
{
|
||||||
|
cw->shaped = 1;
|
||||||
|
cw->shape_changed = 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((cw->c->gl) && (_comp_mod->conf->texture_from_pixmap) &&
|
if ((cw->c->gl) && (_comp_mod->conf->texture_from_pixmap) &&
|
||||||
|
|
Loading…
Reference in New Issue