diff options
Diffstat (limited to 'src/mesa/main/state.c')
-rw-r--r-- | src/mesa/main/state.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mesa/main/state.c b/src/mesa/main/state.c index 80502e59af7..bbe90a32e08 100644 --- a/src/mesa/main/state.c +++ b/src/mesa/main/state.c @@ -246,10 +246,12 @@ update_program(struct gl_context *ctx) * come up, or matter. */ - if (fsProg && fsProg->LinkStatus && fsProg->FragmentProgram) { + if (fsProg && fsProg->LinkStatus + && fsProg->_LinkedShaders[MESA_SHADER_FRAGMENT]) { /* Use GLSL fragment shader */ _mesa_reference_fragprog(ctx, &ctx->FragmentProgram._Current, - fsProg->FragmentProgram); + (struct gl_fragment_program *) + fsProg->_LinkedShaders[MESA_SHADER_FRAGMENT]->Program); } else if (ctx->FragmentProgram._Enabled) { /* Use user-defined fragment program */ |