From caef27492b5a70bd46a09cd5094b2c93e38e39ea Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Sun, 17 Jun 2012 20:56:46 +0100 Subject: [PATCH] sna: convert another instance of applying the clear to the CPU pixmap Signed-off-by: Chris Wilson --- src/sna/sna_accel.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c index 97df25a3..adc3e4e1 100644 --- a/src/sna/sna_accel.c +++ b/src/sna/sna_accel.c @@ -1136,13 +1136,18 @@ skip_inplace_map: kgem_bo_sync__cpu(&sna->kgem, priv->cpu_bo); } - pixman_fill(pixmap->devPrivate.ptr, - pixmap->devKind/sizeof(uint32_t), - pixmap->drawable.bitsPerPixel, - 0, 0, - pixmap->drawable.width, - pixmap->drawable.height, - priv->clear_color); + if (priv->clear_color == 0 || pixmap->drawable.bitsPerPixel == 8) { + memset(pixmap->devPrivate.ptr, priv->clear_color, + pixmap->devKind * pixmap->drawable.height); + } else { + pixman_fill(pixmap->devPrivate.ptr, + pixmap->devKind/sizeof(uint32_t), + pixmap->drawable.bitsPerPixel, + 0, 0, + pixmap->drawable.width, + pixmap->drawable.height, + priv->clear_color); + } priv->clear = false; }