uxa: Call check_solid before running the solid blitter.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
Chris Wilson 2010-05-15 00:48:31 +01:00
parent 213816c30b
commit 3bca186a7e
1 changed files with 8 additions and 4 deletions

View File

@ -909,12 +909,16 @@ uxa_fill_region_solid(DrawablePtr pDrawable,
int xoff, yoff;
Bool ret = FALSE;
uxa_get_drawable_deltas(pDrawable, pPixmap, &xoff, &yoff);
if (uxa_screen->info->check_solid && !uxa_screen->info->check_solid(pDrawable, alu, planemask))
return FALSE;
pPixmap = uxa_get_offscreen_pixmap(pDrawable, &xoff, &yoff);
if (!pPixmap)
return FALSE;
REGION_TRANSLATE(pScreen, pRegion, xoff, yoff);
if (uxa_pixmap_is_offscreen(pPixmap) &&
(*uxa_screen->info->prepare_solid) (pPixmap, alu, planemask, pixel))
{
if ((*uxa_screen->info->prepare_solid) (pPixmap, alu, planemask, pixel)) {
int nbox;
BoxPtr pBox;