summaryrefslogtreecommitdiff
path: root/src/radeon_exa_render.c
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2010-12-03 01:25:41 -0500
committerAlex Deucher <alexdeucher@gmail.com>2010-12-03 01:36:17 -0500
commitf074762fff4253a457cb48519bb33a2e2c90f8b9 (patch)
tree3bb363983df4f3a132ee36191f333747590caa42 /src/radeon_exa_render.c
parent774b114baa932078f8bf91ea302850a8c54c2c07 (diff)
radeon/exa: fallback for non-affine transforms
We need to implement a texture lookup with perspective divide for non-affine transforms. For now just fallback. Should fix: https://bugs.freedesktop.org/show_bug.cgi?id=31799 although it appears either EXA or the xserver gets this wrong too.
Diffstat (limited to 'src/radeon_exa_render.c')
-rw-r--r--src/radeon_exa_render.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/radeon_exa_render.c b/src/radeon_exa_render.c
index da724162..2e13b000 100644
--- a/src/radeon_exa_render.c
+++ b/src/radeon_exa_render.c
@@ -379,6 +379,9 @@ static Bool R100CheckCompositeTexture(PicturePtr pPict,
RADEON_FALLBACK(("REPEAT_NONE unsupported for transformed xRGB source\n"));
}
+ if (!radeon_transform_is_affine(pPict->transform))
+ RADEON_FALLBACK(("non-affine transforms not supported\n"));
+
return TRUE;
}
@@ -778,6 +781,9 @@ static Bool R200CheckCompositeTexture(PicturePtr pPict,
RADEON_FALLBACK(("REPEAT_NONE unsupported for transformed xRGB source\n"));
}
+ if (!radeon_transform_is_affine(pPict->transform))
+ RADEON_FALLBACK(("non-affine transforms not supported\n"));
+
return TRUE;
}
@@ -1162,6 +1168,9 @@ static Bool R300CheckCompositeTexture(PicturePtr pPict,
RADEON_FALLBACK(("REPEAT_NONE unsupported for transformed xRGB source\n"));
}
+ if (!radeon_transform_is_affine(pPict->transform))
+ RADEON_FALLBACK(("non-affine transforms not supported\n"));
+
return TRUE;
}