diff options
author | Keith Packard <keithp@keithp.com> | 2004-08-07 01:23:07 +0000 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2004-08-07 01:23:07 +0000 |
commit | 1e694d2b51a954d1bc4afdde390723e9a1a5b9bf (patch) | |
tree | ba554e8ab002199ce3c12b0639432245fd70faa8 /miext | |
parent | 45fde3b041c071ae5a604cefbbfa4da5c1e828f8 (diff) |
Fix minor timestamp lossage in mieq.
Replace miSprite implementation with Damage-based one. Otherwise damage and
misprite conflict causing looping.
Change pScreen usage around a bit to eliminate warnings
Diffstat (limited to 'miext')
-rwxr-xr-x | miext/damage/damage.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/miext/damage/damage.c b/miext/damage/damage.c index 3acea46a8..4284cacf7 100755 --- a/miext/damage/damage.c +++ b/miext/damage/damage.c @@ -98,9 +98,9 @@ static void damageDamageRegion (DrawablePtr pDrawable, RegionPtr pRegion, Bool clip) #endif { - damageScrPriv(pDrawable->pScreen); - drawableDamage(pDrawable); ScreenPtr pScreen = pDrawable->pScreen; + damageScrPriv(pScreen); + drawableDamage(pDrawable); DamagePtr pNext; RegionPtr pClip; RegionRec clippedRec; @@ -1835,9 +1835,8 @@ DamageSubtract (DamagePtr pDamage, RegionPtr pClip; RegionRec pixmapClip; DrawablePtr pDrawable = pDamage->pDrawable; - ScreenPtr pScreen = pDrawable->pScreen; - REGION_SUBTRACT (pScreen, &pDamage->damage, &pDamage->damage, pRegion); + REGION_SUBTRACT (pDrawable->pScreen, &pDamage->damage, &pDamage->damage, pRegion); if (pDrawable) { if (pDrawable->type == DRAWABLE_WINDOW) @@ -1850,14 +1849,14 @@ DamageSubtract (DamagePtr pDamage, box.y1 = pDrawable->y; box.x2 = pDrawable->x + pDrawable->width; box.y2 = pDrawable->y + pDrawable->height; - REGION_INIT (pScreen, &pixmapClip, &box, 1); + REGION_INIT (pDrawable->pScreen, &pixmapClip, &box, 1); pClip = &pixmapClip; } - REGION_TRANSLATE (pScreen, &pDamage->damage, pDrawable->x, pDrawable->y); - REGION_INTERSECT (pScreen, &pDamage->damage, &pDamage->damage, pClip); - REGION_TRANSLATE (pScreen, &pDamage->damage, -pDrawable->x, -pDrawable->y); + REGION_TRANSLATE (pDrawable->pScreen, &pDamage->damage, pDrawable->x, pDrawable->y); + REGION_INTERSECT (pDrawable->pScreen, &pDamage->damage, &pDamage->damage, pClip); + REGION_TRANSLATE (pDrawable->pScreen, &pDamage->damage, -pDrawable->x, -pDrawable->y); } - return REGION_NOTEMPTY (pScreen, &pDamage->damage); + return REGION_NOTEMPTY (pDrawable->pScreen, &pDamage->damage); } void |