From d8a98454e305973dd7fec76db2ef80705cf7c298 Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Wed, 29 Jun 2005 11:57:16 +0000 Subject: [PATCH] Add support for gradients and solid fills to Render. Changed the semantics of the Convolution filter a bit. It now doesn't try to normalize the filter values but leaves this to the client. This gives more reasonable behaviour in the limit where the filter parameters sum up to 0. --- hw/kdrive/src/kaapict.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/hw/kdrive/src/kaapict.c b/hw/kdrive/src/kaapict.c index bbd1584ff..da093b224 100644 --- a/hw/kdrive/src/kaapict.c +++ b/hw/kdrive/src/kaapict.c @@ -546,11 +546,11 @@ kaaComposite(CARD8 op, KaaScreenPriv (pDst->pDrawable->pScreen); int ret = -1; - if (!pMask) + if (!pMask && pSrc->pDrawable) { if (op == PictOpSrc) { - if (pScreenPriv->enabled && pSrc->pDrawable->width == 1 && + if (pScreenPriv->enabled && pSrc->pDrawable && pSrc->pDrawable->width == 1 && pSrc->pDrawable->height == 1 && pSrc->repeat) { ret = kaaTryDriverSolidFill(pSrc, pDst, xSrc, ySrc, xDst, yDst, @@ -592,7 +592,8 @@ kaaComposite(CARD8 op, } } - if (pScreenPriv->enabled && pKaaScr->info->PrepareComposite && + if (pSrc->pDrawable && (!pMask || pMask->pDrawable) && + pScreenPriv->enabled && pKaaScr->info->PrepareComposite && !pSrc->alphaMap && (!pMask || !pMask->alphaMap) && !pDst->alphaMap) { ret = kaaTryDriverComposite(op, pSrc, pMask, pDst, xSrc, ySrc, xMask,