GLSL fixes:
- generate error on NULL pointers in glShaderSourceARB; - reinstall program object, if current, in glLinkProgramARB; - vertex and fragment shaders are optional in program object; - floor asm was wrongly computed for x86 back-end; - allow for (void) idiom in function prototypes; - all fixed-state uniforms are updated; - local variable initializers are working; - implement texture* and shadow* functions for vertex processor; - generate error if too many arguments in general constructor; - trim unused data in general constructor; - struct r-value field select was badly relocated; Changes: - add derived state gl_fog_attrib::_Scale; - add derived state gl_light::_CosCutoffNeg;
This commit is contained in:
@@ -1264,7 +1264,7 @@ run_arb_vertex_program(GLcontext *ctx, struct tnl_pipeline_stage *stage)
|
||||
GLuint i, j;
|
||||
GLbitfield outputs;
|
||||
|
||||
if (ctx->ShaderObjects.CurrentProgram != NULL)
|
||||
if (ctx->ShaderObjects._VertexShaderPresent)
|
||||
return GL_TRUE;
|
||||
|
||||
program = (ctx->VertexProgram._Enabled ? ctx->VertexProgram.Current : ctx->_TnlProgram);
|
||||
@@ -1427,7 +1427,7 @@ validate_vertex_program( GLcontext *ctx, struct tnl_pipeline_stage *stage )
|
||||
struct arb_vp_machine *m = ARB_VP_MACHINE(stage);
|
||||
struct vertex_program *program;
|
||||
|
||||
if (ctx->ShaderObjects.CurrentProgram != NULL)
|
||||
if (ctx->ShaderObjects._VertexShaderPresent)
|
||||
return;
|
||||
|
||||
program = (ctx->VertexProgram._Enabled ? ctx->VertexProgram.Current : 0);
|
||||
|
Reference in New Issue
Block a user