From 863a0bfe33444a52e672151487686aaf39b96891 Mon Sep 17 00:00:00 2001 From: "H. Verbeet" Date: Mon, 16 Apr 2007 21:44:27 +0200 Subject: [PATCH] wined3d: Ignore SetTextureStageState on unsupported texture stages. --- dlls/wined3d/device.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index d4f8dddb41e..d19d77367d9 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c @@ -3774,6 +3774,11 @@ static HRESULT WINAPI IWineD3DDeviceImpl_SetTextureStageState(IWineD3DDevice *if TRACE("(%p) : Stage=%d, Type=%s(%d), Value=%d\n", This, Stage, debug_d3dtexturestate(Type), Type, Value); + if (Stage >= MAX_TEXTURES) { + WARN("Attempting to set stage %u which is higher than the max stage %u, ignoring\n", Stage, MAX_TEXTURES - 1); + return WINED3D_OK; + } + This->updateStateBlock->changed.textureState[Stage][Type] = TRUE; This->updateStateBlock->set.textureState[Stage][Type] = TRUE; This->updateStateBlock->textureState[Stage][Type] = Value;