summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vmwgfx/vmwgfx_driver.c4
-rw-r--r--vmwgfx/vmwgfx_saa.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/vmwgfx/vmwgfx_driver.c b/vmwgfx/vmwgfx_driver.c
index 048534e..17d93eb 100644
--- a/vmwgfx/vmwgfx_driver.c
+++ b/vmwgfx/vmwgfx_driver.c
@@ -573,15 +573,11 @@ void xorg_flush(ScreenPtr pScreen)
if (vpix->pending_update) {
(void) vmwgfx_scanout_update(ms->fd, vpix->fb_id,
vpix->pending_update);
- REGION_SUBTRACT(pScreen, vpix->dirty_present,
- vpix->dirty_present, vpix->pending_update);
REGION_EMPTY(pScreen, vpix->pending_update);
}
if (vpix->pending_present) {
(void) vmwgfx_scanout_present(pScreen, ms->fd, vpix,
vpix->pending_present);
- REGION_SUBTRACT(pScreen, vpix->dirty_present,
- vpix->dirty_present, vpix->pending_present);
REGION_EMPTY(pScreen, vpix->pending_present);
}
}
diff --git a/vmwgfx/vmwgfx_saa.c b/vmwgfx/vmwgfx_saa.c
index 83b1698..ad7f8b1 100644
--- a/vmwgfx/vmwgfx_saa.c
+++ b/vmwgfx/vmwgfx_saa.c
@@ -1054,6 +1054,8 @@ vmwgfx_dirty(struct saa_driver *driver, PixmapPtr pixmap,
}
REGION_UNION(vsaa->pScreen, vpix->pending_present,
vpix->pending_present, damage);
+ REGION_SUBTRACT(vsaa->pScreen, vpix->dirty_present,
+ vpix->dirty_present, damage);
}
} else {
if (REGION_NOTEMPTY(vsaa->pScreen, vpix->pending_present)) {
@@ -1068,6 +1070,8 @@ vmwgfx_dirty(struct saa_driver *driver, PixmapPtr pixmap,
}
REGION_UNION(vsaa->pScreen, vpix->pending_update,
vpix->pending_update, damage);
+ REGION_SUBTRACT(vsaa->pScreen, vpix->dirty_present,
+ vpix->dirty_present, damage);
}
return TRUE;