From cf4ccd5020743591b8d2b29df279c729004ca393 Mon Sep 17 00:00:00 2001 From: Michel Dänzer Date: Sat, 3 Feb 2007 17:32:02 +0100 Subject: Fall back to software rasterization if r300_translate_fragment_shader() fails. Aborting immediately is a bad idea with AIGLX. --- src/mesa/drivers/dri/r300/r300_render.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/mesa/drivers/dri/r300/r300_render.c') diff --git a/src/mesa/drivers/dri/r300/r300_render.c b/src/mesa/drivers/dri/r300/r300_render.c index 3d094b9db5..e29df87696 100644 --- a/src/mesa/drivers/dri/r300/r300_render.c +++ b/src/mesa/drivers/dri/r300/r300_render.c @@ -385,8 +385,18 @@ GLboolean r300_run_vb_render(GLcontext *ctx, int r300Fallback(GLcontext *ctx) { r300ContextPtr r300 = R300_CONTEXT(ctx); + struct r300_fragment_program *rp = + (struct r300_fragment_program *) + (char *)ctx->FragmentProgram._Current; int i; + if (rp) { + if (!rp->translated) + r300_translate_fragment_shader(rp); + + FALLBACK_IF(!rp->translated); + } + /* We do not do SELECT or FEEDBACK (yet ?) * Is it worth doing them ? */ -- cgit v1.2.3