diff options
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/main/texstate.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/mesa/main/texstate.c b/src/mesa/main/texstate.c index 46cebe9106..dce8c362da 100644 --- a/src/mesa/main/texstate.c +++ b/src/mesa/main/texstate.c @@ -2937,8 +2937,11 @@ update_texture_state( GLcontext *ctx ) ctx->Texture._EnabledCoordUnits = ctx->Texture._EnabledUnits; /* Fragment programs may need texture coordinates but not the * corresponding texture images. - */ - if (ctx->FragmentProgram._Enabled) { + */
+ if (ctx->ShaderObjects.CurrentProgram != NULL) {
+ ctx->Texture._EnabledCoordUnits |= (1 << 8) - 1;
+ } + else if (ctx->FragmentProgram._Enabled) { ctx->Texture._EnabledCoordUnits |= (ctx->FragmentProgram.Current->Base.InputsRead >> FRAG_ATTRIB_TEX0); } |