summaryrefslogtreecommitdiff
path: root/exa/exa.c
diff options
context:
space:
mode:
authorMichel Dänzer <daenzer@vmware.com>2009-02-26 10:35:44 +0100
committerMichel Dänzer <daenzer@vmware.com>2009-02-26 10:35:44 +0100
commitb26c136ee9bf7015c583136af53d0c9e9da67ace (patch)
tree055039311875f3d4db0f997533bc7d8c5fa6bca7 /exa/exa.c
parent812e8d681a49b33d8748983843799ef692b8b148 (diff)
EXA: Stop tracking damage for pixmaps subject to ModifyPixmapHeader.
Signed-off-by: Michel Dänzer <daenzer@vmware.com>
Diffstat (limited to 'exa/exa.c')
-rw-r--r--exa/exa.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/exa/exa.c b/exa/exa.c
index 9329f1094..a64769905 100644
--- a/exa/exa.c
+++ b/exa/exa.c
@@ -431,6 +431,15 @@ exaModifyPixmapHeader(PixmapPtr pPixmap, int width, int height, int depth,
exaSetAccelBlock(pExaScr, pExaPixmap,
width, height, bitsPerPixel);
}
+
+ /* Pixmaps subject to ModifyPixmapHeader will be pinned to system or
+ * offscreen memory, so there's no need to track damage.
+ */
+ if (pExaPixmap->pDamage) {
+ DamageUnregister(&pPixmap->drawable, pExaPixmap->pDamage);
+ DamageDestroy(pExaPixmap->pDamage);
+ pExaPixmap->pDamage = NULL;
+ }
}