diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c index adb426b..10fa94f 100644 --- a/dlls/wined3d/state.c +++ b/dlls/wined3d/state.c @@ -5733,6 +5733,7 @@ HRESULT compile_state_table(struct StateEntry *StateTable, APPLYSTATEFUNC **dev_ APPLYSTATEFUNC multistate_funcs[STATE_HIGHEST + 1][3]; const struct StateEntryTemplate *cur; BOOL set[STATE_HIGHEST + 1]; + unsigned int start, last; memset(multistate_funcs, 0, sizeof(multistate_funcs)); @@ -5824,6 +5825,14 @@ HRESULT compile_state_table(struct StateEntry *StateTable, APPLYSTATEFUNC **dev_ } } + start = STATE_TEXTURESTAGE(gl_info->limits.texture_stages, 0); + last = STATE_TEXTURESTAGE(MAX_TEXTURES - 1, WINED3D_HIGHEST_TEXTURE_STATE); + for (i = start; i <= last; ++i) + { + StateTable[i].representative = 0; + StateTable[i].apply = state_undefined; + } + return WINED3D_OK; out_of_mem: