From: Michel Dänzer <[email protected]> The upload in finish access can cause an infinite loop if UTS returns FALSE in here.
Signed-off-by: Dave Airlie <[email protected]> --- exa/exa_migration_classic.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) diff --git a/exa/exa_migration_classic.c b/exa/exa_migration_classic.c index 4819af8..6d7b9f5 100644 --- a/exa/exa_migration_classic.c +++ b/exa/exa_migration_classic.c @@ -242,11 +242,6 @@ exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc, pBox++; } - if (access_prepared) - exaFinishAccess(&pPixmap->drawable, fallback_index); - else if (need_sync && sync) - sync (pPixmap->drawable.pScreen); - pExaPixmap->offscreen = save_offscreen; pPixmap->devKind = save_pitch; @@ -261,6 +256,11 @@ exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc, REGION_UNION(pScreen, pValidDst, pValidDst, &CopyReg); REGION_UNINIT(pScreen, &CopyReg); + + if (access_prepared) + exaFinishAccess(&pPixmap->drawable, fallback_index); + else if (need_sync && sync) + sync (pPixmap->drawable.pScreen); } /** -- 1.6.5.rc2 _______________________________________________ xorg-devel mailing list [email protected] http://lists.x.org/mailman/listinfo/xorg-devel
