set NULL image pixel data during x11 render when no damages exist

fixes a weird corner case where shapeless clients try to sneak a fast one
by and you gotta be like http://i.imgur.com/irwmnCT.webm

ref T3157
This commit is contained in:
Mike Blumenkrantz 2016-04-21 18:21:26 -04:00
parent b431fa2939
commit 72374fee7f
1 changed files with 2 additions and 0 deletions

View File

@ -3752,6 +3752,7 @@ e_comp_object_render(Evas_Object *obj)
} }
RENDER_DEBUG("UPDATE [%p] %i %i %ix%i", cw->ec, r->x, r->y, r->w, r->h); RENDER_DEBUG("UPDATE [%p] %i %i %ix%i", cw->ec, r->x, r->y, r->w, r->h);
} }
if (!it) pix = NULL;
goto end; goto end;
} }
@ -3778,6 +3779,7 @@ e_comp_object_render(Evas_Object *obj)
e_pixmap_image_data_argb_convert(cw->ec->pixmap, pix, srcpix, r, stride); e_pixmap_image_data_argb_convert(cw->ec->pixmap, pix, srcpix, r, stride);
RENDER_DEBUG("UPDATE [%p]: %d %d %dx%d -- pix = %p", cw->ec, r->x, r->y, r->w, r->h, pix); RENDER_DEBUG("UPDATE [%p]: %d %d %dx%d -- pix = %p", cw->ec, r->x, r->y, r->w, r->h, pix);
} }
if (!it) pix = NULL;
eina_iterator_free(it); eina_iterator_free(it);
end: end:
evas_object_image_data_set(cw->obj, cw->blanked ? NULL : pix); evas_object_image_data_set(cw->obj, cw->blanked ? NULL : pix);