[PATCH 1/7] wined3d: Validate render state in wined3d_device_set_render_state().
Józef Kucia
jkucia at codeweavers.com
Wed Jan 27 17:17:46 CST 2016
Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
For bug 33988.
---
dlls/wined3d/device.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 97586f4..e937abc 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -2032,10 +2032,17 @@ static void resolve_depth_buffer(struct wined3d_state *state)
void CDECL wined3d_device_set_render_state(struct wined3d_device *device,
enum wined3d_render_state state, DWORD value)
{
- DWORD old_value = device->state.render_states[state];
+ DWORD old_value;
TRACE("device %p, state %s (%#x), value %#x.\n", device, debug_d3drenderstate(state), state, value);
+ if (state > WINEHIGHEST_RENDER_STATE)
+ {
+ WARN("Unhandled render state %#x.\n", state);
+ return;
+ }
+
+ old_value = device->state.render_states[state];
device->update_state->render_states[state] = value;
/* Handle recording of state blocks. */
--
2.4.10
More information about the wine-patches
mailing list