diff options
author | Maarten Maathuis <madman2003@gmail.com> | 2009-02-17 19:06:35 +0100 |
---|---|---|
committer | Maarten Maathuis <madman2003@gmail.com> | 2009-02-17 19:25:35 +0100 |
commit | 3175646b10c602d17d5dd37bdace7c1c7ee92b3d (patch) | |
tree | 5ec29f76d020428a60fc2a86dceb4852cdf052c3 /exa/exa.c | |
parent | 97c1cbc70216366e92b9371de608ce94e60aa874 (diff) |
exa: exaPixmapDirty should use official damage functions.
- Otherwise other users will not be notified of damage.
Diffstat (limited to 'exa/exa.c')
-rw-r--r-- | exa/exa.c | 10 |
1 files changed, 2 insertions, 8 deletions
@@ -160,14 +160,9 @@ exaGetDrawableDeltas (DrawablePtr pDrawable, PixmapPtr pPixmap, void exaPixmapDirty (PixmapPtr pPix, int x1, int y1, int x2, int y2) { - ExaPixmapPriv(pPix); BoxRec box; - RegionPtr pDamageReg; RegionRec region; - if (!pExaPixmap || !pExaPixmap->pDamage) - return; - box.x1 = max(x1, 0); box.y1 = max(y1, 0); box.x2 = min(x2, pPix->drawable.width); @@ -176,10 +171,9 @@ exaPixmapDirty (PixmapPtr pPix, int x1, int y1, int x2, int y2) if (box.x1 >= box.x2 || box.y1 >= box.y2) return; - pDamageReg = DamageRegion(pExaPixmap->pDamage); - REGION_INIT(pScreen, ®ion, &box, 1); - REGION_UNION(pScreen, pDamageReg, pDamageReg, ®ion); + DamageRegionAppend(&pPix->drawable, ®ion); + DamageRegionProcessPending(&pPix->drawable); REGION_UNINIT(pScreen, ®ion); } |