From 78fcbf577ad6eba6399cc39f74b7ce5f9c8e265e Mon Sep 17 00:00:00 2001 From: Michel Dänzer Date: Thu, 3 Sep 2009 14:55:05 +0200 Subject: EXA: Check for solid/gradient pictures the same way for all generations. In particular, also catch them for >= R300. --- src/r600_exa.c | 3 +++ src/radeon_exa_render.c | 7 +++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/r600_exa.c b/src/r600_exa.c index f2ddc677..d2df1dbe 100644 --- a/src/r600_exa.c +++ b/src/r600_exa.c @@ -1344,6 +1344,9 @@ static Bool R600CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskP if (op >= (int) (sizeof(R600BlendOp) / sizeof(R600BlendOp[0]))) RADEON_FALLBACK(("Unsupported Composite op 0x%x\n", op)); + if (!pSrcPicture->pDrawable) + RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n")); + pSrcPixmap = RADEONGetDrawablePixmap(pSrcPicture->pDrawable); max_tex_w = 8192; diff --git a/src/radeon_exa_render.c b/src/radeon_exa_render.c index f842b973..6053eef2 100644 --- a/src/radeon_exa_render.c +++ b/src/radeon_exa_render.c @@ -489,7 +489,7 @@ static Bool R100CheckComposite(int op, PicturePtr pSrcPicture, RADEON_FALLBACK(("Unsupported Composite op 0x%x\n", op)); if (!pSrcPicture->pDrawable) - return FALSE; + RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n")); /* r100 limit should be 2048, there are issues with 2048 * see 197a62704742a4a19736c2637ac92d1dc5ab34ed @@ -865,7 +865,7 @@ static Bool R200CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskP RADEON_FALLBACK(("Unsupported Composite op 0x%x\n", op)); if (!pSrcPicture->pDrawable) - return FALSE; + RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n")); /* r200 limit should be 2048, there are issues with 2048 * see bug 19269 @@ -1315,6 +1315,9 @@ static Bool R300CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskP if (op >= sizeof(RadeonBlendOp) / sizeof(RadeonBlendOp[0])) RADEON_FALLBACK(("Unsupported Composite op 0x%x\n", op)); + if (!pSrcPicture->pDrawable) + RADEON_FALLBACK(("Solid or gradient pictures not supported yet\n")); + pSrcPixmap = RADEONGetDrawablePixmap(pSrcPicture->pDrawable); if (IS_R500_3D) { -- cgit v1.2.3