Make exaCopyNtoNTwoDir() call DoneCopy() at the end of each string of
consecutive Copy() calls (rather than exactly once at the end of the function). Reviewed by: jbarnes
This commit is contained in:
parent
c3342c8000
commit
9a7fba5fd0
|
@ -1,3 +1,12 @@
|
|||
2006-03-11 Eric Anholt <anholt@FreeBSD.org>
|
||||
|
||||
reviewed by: jbarnes
|
||||
|
||||
* exa/exa_accel.c: (exaCopyNtoNTwoDir):
|
||||
Make exaCopyNtoNTwoDir() call DoneCopy() at the end of each string of
|
||||
consecutive Copy() calls (rather than exactly once at the end of the
|
||||
function).
|
||||
|
||||
2006-03-10 Kristian Høgsberg <krh@redhat.com>
|
||||
|
||||
* Merge accel_indirect branch to HEAD.
|
||||
|
|
|
@ -148,6 +148,8 @@ exaCopyNtoNTwoDir (DrawablePtr pSrcDrawable, DrawablePtr pDstDrawable,
|
|||
if (dx >= 0 && (src_off_y + pbox->y1 + dy) != pbox->y1) {
|
||||
/* Do a xdir = ydir = -1 blit instead. */
|
||||
if (dirsetup != -1) {
|
||||
if (dirsetup != 0)
|
||||
pExaScr->info->DoneCopy(pDstPixmap);
|
||||
dirsetup = -1;
|
||||
if (!(*pExaScr->info->PrepareCopy)(pSrcPixmap,
|
||||
pDstPixmap,
|
||||
|
@ -167,6 +169,8 @@ exaCopyNtoNTwoDir (DrawablePtr pSrcDrawable, DrawablePtr pDstDrawable,
|
|||
} else if (dx < 0 && (src_off_y + pbox->y1 + dy) != pbox->y1) {
|
||||
/* Do a xdir = ydir = 1 blit instead. */
|
||||
if (dirsetup != 1) {
|
||||
if (dirsetup != 0)
|
||||
pExaScr->info->DoneCopy(pDstPixmap);
|
||||
dirsetup = 1;
|
||||
if (!(*pExaScr->info->PrepareCopy)(pSrcPixmap,
|
||||
pDstPixmap,
|
||||
|
@ -190,6 +194,8 @@ exaCopyNtoNTwoDir (DrawablePtr pSrcDrawable, DrawablePtr pDstDrawable,
|
|||
*/
|
||||
int i;
|
||||
if (dirsetup != 1) {
|
||||
if (dirsetup != 0)
|
||||
pExaScr->info->DoneCopy(pDstPixmap);
|
||||
dirsetup = 1;
|
||||
if (!(*pExaScr->info->PrepareCopy)(pSrcPixmap,
|
||||
pDstPixmap,
|
||||
|
@ -213,6 +219,8 @@ exaCopyNtoNTwoDir (DrawablePtr pSrcDrawable, DrawablePtr pDstDrawable,
|
|||
*/
|
||||
int i;
|
||||
if (dirsetup != -1) {
|
||||
if (dirsetup != 0)
|
||||
pExaScr->info->DoneCopy(pDstPixmap);
|
||||
dirsetup = -1;
|
||||
if (!(*pExaScr->info->PrepareCopy)(pSrcPixmap,
|
||||
pDstPixmap,
|
||||
|
@ -231,7 +239,8 @@ exaCopyNtoNTwoDir (DrawablePtr pSrcDrawable, DrawablePtr pDstDrawable,
|
|||
pbox->x2 - pbox->x1, 1);
|
||||
}
|
||||
}
|
||||
(*pExaScr->info->DoneCopy)(pDstPixmap);
|
||||
if (dirsetup != 0)
|
||||
pExaScr->info->DoneCopy(pDstPixmap);
|
||||
exaMarkSync(pDstDrawable->pScreen);
|
||||
exaDrawableDirty(pDstDrawable);
|
||||
return TRUE;
|
||||
|
|
Loading…
Reference in New Issue
Block a user