Move the exaDrawableDirty in exaPrepareAccess to exaFinishAccess, which is
after the drawing is done. Previously, a failed PrepareAccess could have migrated and cleared the dirty flag before the damage was ever done.
This commit is contained in:
parent
ffdbb547be
commit
5b1a7b478f
|
@ -1,3 +1,11 @@
|
|||
2006-03-10 Eric Anholt <anholt@FreeBSD.org>
|
||||
|
||||
* exa/exa.c: (exaPrepareAccess), (exaFinishAccess):
|
||||
Move the exaDrawableDirty in exaPrepareAccess to exaFinishAccess, which
|
||||
is after the drawing is done. Previously, a failed PrepareAccess could
|
||||
have migrated and cleared the dirty flag before the damage was ever
|
||||
done.
|
||||
|
||||
2006-03-10 Eric Anholt <anholt@FreeBSD.org>
|
||||
|
||||
* hw/xfree86/vbe/vbe.c: (vbeProbeDDC):
|
||||
|
|
|
@ -230,8 +230,6 @@ exaPrepareAccess(DrawablePtr pDrawable, int index)
|
|||
|
||||
pPixmap = exaGetDrawablePixmap (pDrawable);
|
||||
|
||||
if (index == EXA_PREPARE_DEST)
|
||||
exaDrawableDirty (pDrawable);
|
||||
if (exaPixmapIsOffscreen (pPixmap))
|
||||
exaWaitSync (pDrawable->pScreen);
|
||||
else
|
||||
|
@ -255,6 +253,9 @@ exaFinishAccess(DrawablePtr pDrawable, int index)
|
|||
ExaScreenPriv (pScreen);
|
||||
PixmapPtr pPixmap;
|
||||
|
||||
if (index == EXA_PREPARE_DEST)
|
||||
exaDrawableDirty (pDrawable);
|
||||
|
||||
if (pExaScr->info->FinishAccess == NULL)
|
||||
return;
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user