diff options
Diffstat (limited to 'src/mesa/tnl/t_vb_arbprogram.c')
-rw-r--r-- | src/mesa/tnl/t_vb_arbprogram.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mesa/tnl/t_vb_arbprogram.c b/src/mesa/tnl/t_vb_arbprogram.c index d034929fe0a..0b39f77ae86 100644 --- a/src/mesa/tnl/t_vb_arbprogram.c +++ b/src/mesa/tnl/t_vb_arbprogram.c @@ -1237,7 +1237,10 @@ run_arb_vertex_program(GLcontext *ctx, struct tnl_pipeline_stage *stage) if (ctx->ShaderObjects._VertexShaderPresent) return GL_TRUE; - program = (ctx->VertexProgram._Enabled ? ctx->VertexProgram.Current : ctx->_TnlProgram); + program = (ctx->VertexProgram._Enabled ? ctx->VertexProgram.Current : 0); + if (!program && ctx->_MaintainTnlProgram) { + program = ctx->_TnlProgram; + } if (!program || program->IsNVProgram) return GL_TRUE; |