diff options
author | Dave Airlie <airlied@linux.ie> | 2007-07-17 17:16:51 +1000 |
---|---|---|
committer | Michel Dänzer <michel@tungstengraphics.com> | 2007-09-07 18:41:29 +0200 |
commit | e510a77ba4d65d5d6ead514cd698f1b1e3f8a2b6 (patch) | |
tree | a8ba284e66ee4a64374c88a828999cd8bef7d887 /exa/exa_unaccel.c | |
parent | 84eb7e62248ddc2761af8cefe33d1b7147477528 (diff) |
EXA: Add a couple of missing exaPrepare/FinishAccess calls.
Diffstat (limited to 'exa/exa_unaccel.c')
-rw-r--r-- | exa/exa_unaccel.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/exa/exa_unaccel.c b/exa/exa_unaccel.c index d793ec2b9..8db28667f 100644 --- a/exa/exa_unaccel.c +++ b/exa/exa_unaccel.c @@ -35,10 +35,13 @@ * * Solid doesn't use an extra pixmap source, and Stippled/OpaqueStippled are * 1bpp and never in fb, so we don't worry about them. + * We should worry about them for completeness sake and going forward. */ void exaPrepareAccessGC(GCPtr pGC) { + if (pGC->stipple) + exaPrepareAccess(&pGC->stipple->drawable, EXA_PREPARE_SRC); if (pGC->fillStyle == FillTiled) exaPrepareAccess(&pGC->tile.pixmap->drawable, EXA_PREPARE_SRC); } @@ -51,6 +54,8 @@ exaFinishAccessGC(GCPtr pGC) { if (pGC->fillStyle == FillTiled) exaFinishAccess(&pGC->tile.pixmap->drawable, EXA_PREPARE_SRC); + if (pGC->stipple) + exaFinishAccess(&pGC->stipple->drawable, EXA_PREPARE_SRC); } #if DEBUG_TRACE_FALL @@ -294,7 +299,9 @@ ExaCheckPaintWindow (WindowPtr pWin, RegionPtr pRegion, int what) EXA_FALLBACK(("from %p (%c)\n", pWin, exaDrawableLocation(&pWin->drawable))); exaPrepareAccess (&pWin->drawable, EXA_PREPARE_DEST); + exaPrepareAccessWindow(pWin); fbPaintWindow (pWin, pRegion, what); + exaFinishAccessWindow(pWin); exaFinishAccess (&pWin->drawable, EXA_PREPARE_DEST); } |