Restrict 1x1 pixmap filling optimization to GXcopy

This restricts an optimization whereby the filling of 1x1 pixmaps
went around the driver-provided function to cases where the
source color is meant to be directly copied to the destination,
as opposed to other operations which should produce different
destination values than just the foreground color.

Signed-off-by: George Matsumura <gmmatsumura01@bvsd.org>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
(cherry picked from commit 83826075e5)
This commit is contained in:
George Matsumura 2020-02-06 17:54:36 +01:00 committed by Michel Dänzer
parent c2ef88c4d3
commit d845ceae53
1 changed files with 1 additions and 1 deletions

View File

@ -1037,7 +1037,7 @@ exaFillRegionSolid(DrawablePtr pDrawable, RegionPtr pRegion, Pixel pixel,
if (pExaPixmap->pDamage &&
pExaPixmap->sys_ptr && pDrawable->type == DRAWABLE_PIXMAP &&
pDrawable->width == 1 && pDrawable->height == 1 &&
pDrawable->bitsPerPixel != 24) {
pDrawable->bitsPerPixel != 24 && alu == GXcopy) {
RegionPtr pending_damage = DamagePendingRegion(pExaPixmap->pDamage);
switch (pDrawable->bitsPerPixel) {