st/nine: Properly declare sampler states for ff
authorAxel Davy <axel.davy@ens.fr>
Sat, 1 Oct 2016 10:55:16 +0000 (12:55 +0200)
committerAxel Davy <axel.davy@ens.fr>
Mon, 10 Oct 2016 21:43:50 +0000 (23:43 +0200)
Fixes a softpipe assertion failure with wine tests

Signed-off-by: Axel Davy <axel.davy@ens.fr>
Reviewed-by: Patrick Rudolph <siro@das-labor.org>
src/gallium/state_trackers/nine/nine_ff.c

index 32440bb4a85438708888deb3f0477f0c509d3f98..cc09926c99d3f8232c4afd70bb7c2971db88a622 100644 (file)
@@ -1755,7 +1755,12 @@ nine_ff_get_ps(struct NineDevice9 *device)
             break;
         }
 
-        if (state->ff.tex_stage[s][D3DTSS_COLORARG1] == D3DTA_TEXTURE)
+        if (state->ff.tex_stage[s][D3DTSS_COLORARG0] == D3DTA_TEXTURE ||
+            state->ff.tex_stage[s][D3DTSS_COLORARG1] == D3DTA_TEXTURE ||
+            state->ff.tex_stage[s][D3DTSS_COLORARG2] == D3DTA_TEXTURE ||
+            state->ff.tex_stage[s][D3DTSS_ALPHAARG0] == D3DTA_TEXTURE ||
+            state->ff.tex_stage[s][D3DTSS_ALPHAARG1] == D3DTA_TEXTURE ||
+            state->ff.tex_stage[s][D3DTSS_ALPHAARG2] == D3DTA_TEXTURE)
             sampler_mask |= (1 << s);
 
         if (key.ts[s].colorop != D3DTOP_DISABLE) {