summaryrefslogtreecommitdiff
path: root/src/mesa/main/texenvprogram.c
diff options
context:
space:
mode:
authorBen Skeggs <skeggsb@gmail.com>2007-12-15 09:48:11 +1100
committerBen Skeggs <skeggsb@gmail.com>2007-12-15 09:48:11 +1100
commitb5b9ac62e6a9667de4bb2078d5cd3199fe25f619 (patch)
tree5c3f389d10132cd2c9733c5c0f3d81a657298f53 /src/mesa/main/texenvprogram.c
parent7f89c776e19b400c0adf647fc9dfb392efe88dbd (diff)
parent017f862de1f857bca29f09794539aaf411014f13 (diff)
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
Diffstat (limited to 'src/mesa/main/texenvprogram.c')
-rw-r--r--src/mesa/main/texenvprogram.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/mesa/main/texenvprogram.c b/src/mesa/main/texenvprogram.c
index efb3b35f6a..d866d10017 100644
--- a/src/mesa/main/texenvprogram.c
+++ b/src/mesa/main/texenvprogram.c
@@ -936,10 +936,16 @@ static void load_texture( struct texenv_fragment_program *p, GLuint unit )
/* TODO: Use D0_MASK_XY where possible.
*/
- if (p->state->unit[unit].enabled)
+ if (p->state->unit[unit].enabled) {
p->src_texture[unit] = emit_texld( p, OPCODE_TXP,
tmp, WRITEMASK_XYZW,
unit, dim, texcoord );
+ p->program->Base.SamplersUsed |= (1 << unit);
+ /* This identity mapping should already be in place
+ * (see _mesa_init_program_struct()) but let's be safe.
+ */
+ p->program->Base.SamplerUnits[unit] = unit;
+ }
else
p->src_texture[unit] = get_zero(p);
}