diff options
Diffstat (limited to 'src/sna/sna_composite.c')
-rw-r--r-- | src/sna/sna_composite.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/sna/sna_composite.c b/src/sna/sna_composite.c index 9dc38081..973a6572 100644 --- a/src/sna/sna_composite.c +++ b/src/sna/sna_composite.c @@ -868,7 +868,12 @@ fallback: dst->format)) goto fallback_composite; - do { + if (pixel == 0 && + box->x2 - box->x1 == pixmap->drawable.width && + box->y2 - box->y1 == pixmap->drawable.height) { + memset(pixmap->devPrivate.ptr, 0, + pixmap->devKind*pixmap->drawable.height); + } else do { DBG(("%s: fallback fill: (%d, %d)x(%d, %d) %08x\n", __FUNCTION__, box->x1, box->y1, |