diff options
author | Maarten Maathuis <madman2003@gmail.com> | 2009-07-22 21:35:41 +0200 |
---|---|---|
committer | Maarten Maathuis <madman2003@gmail.com> | 2009-08-06 23:48:13 +0200 |
commit | ac7ac913fd98ea359c05c89968ab53a3223615b4 (patch) | |
tree | 084201c6a72c02db79556508b5ff9af7166ecdc1 /exa/exa_accel.c | |
parent | 3abbd327f4a732408119de1f8e9ecba4812772a5 (diff) |
exa: Split out some classic and driver allocated pixmap code into seperate files
- Create a few seperate functions and a few private function pointers.
- Replace a few if conditions with a check for pExaPix->pDamage instead.
- This is in preperation of a third scheme that lies somewhere in between.
- Code clarity would have suffered (i started working on it and didn't like the mess).
Diffstat (limited to 'exa/exa_accel.c')
-rw-r--r-- | exa/exa_accel.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/exa/exa_accel.c b/exa/exa_accel.c index 3aa55788c..bc970bbe1 100644 --- a/exa/exa_accel.c +++ b/exa/exa_accel.c @@ -1015,7 +1015,7 @@ exaFillRegionSolid (DrawablePtr pDrawable, RegionPtr pRegion, Pixel pixel, (*pExaScr->info->DoneSolid) (pPixmap); exaMarkSync(pDrawable->pScreen); - if (!(pExaScr->info->flags & EXA_HANDLES_PIXMAPS) && + if (pExaPixmap->pDamage && pDrawable->width == 1 && pDrawable->height == 1 && pDrawable->bitsPerPixel != 24) { ExaPixmapPriv(pPixmap); @@ -1233,13 +1233,14 @@ exaGetImage (DrawablePtr pDrawable, int x, int y, int w, int h, { ExaScreenPriv (pDrawable->pScreen); PixmapPtr pPix = exaGetDrawablePixmap (pDrawable); + ExaPixmapPrivPtr pExaPixmap = ExaGetPixmapPriv (pPix); int xoff, yoff; Bool ok; if (pExaScr->swappedOut) goto fallback; - if (!(pExaScr->info->flags & EXA_HANDLES_PIXMAPS)) { + if (pExaPixmap->pDamage) { BoxRec Box; RegionRec Reg; ExaMigrationRec pixmaps[1]; |