From: Michel Dänzer <michel.daen...@amd.com>

The wrong order meant that the clipping region wasn't actually applied,
so it always copied the full contents from the other scanout pixmap.

Signed-off-by: Michel Dänzer <michel.daen...@amd.com>
---
 src/radeon_kms.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/radeon_kms.c b/src/radeon_kms.c
index 8bb261e..5764c20 100644
--- a/src/radeon_kms.c
+++ b/src/radeon_kms.c
@@ -495,8 +495,8 @@ radeon_sync_scanout_pixmaps(xf86CrtcPtr xf86_crtc, 
RegionPtr new_region,
 
     gc = GetScratchGC(dst->depth, pScreen);
     if (gc) {
-       ValidateGC(dst, gc);
        gc->funcs->ChangeClip(gc, CT_REGION, sync_region, 0);
+       ValidateGC(dst, gc);
        sync_region = NULL;
        gc->ops->CopyArea(src, dst, gc, 0, 0, dst->width, dst->height, 0, 0);
        FreeScratchGC(gc);
-- 
2.10.2

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to