You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-04-13 14:42:51 -07:00
Added patch to ignore invalid render states in wined3d_device_set_render_state.
This commit is contained in:
@@ -316,6 +316,7 @@ patch_enable_all ()
|
||||
enable_wined3d_CSMT_Main="$1"
|
||||
enable_wined3d_DXTn="$1"
|
||||
enable_wined3d_Geforce_425M="$1"
|
||||
enable_wined3d_Invalid_Render_States="$1"
|
||||
enable_wined3d_MESA_GPU_Info="$1"
|
||||
enable_wined3d_Multisampling="$1"
|
||||
enable_wined3d_Revert_PixelFormat="$1"
|
||||
@@ -1071,6 +1072,9 @@ patch_enable ()
|
||||
wined3d-Geforce_425M)
|
||||
enable_wined3d_Geforce_425M="$2"
|
||||
;;
|
||||
wined3d-Invalid_Render_States)
|
||||
enable_wined3d_Invalid_Render_States="$2"
|
||||
;;
|
||||
wined3d-MESA_GPU_Info)
|
||||
enable_wined3d_MESA_GPU_Info="$2"
|
||||
;;
|
||||
@@ -6038,6 +6042,21 @@ if test "$enable_wined3d_Geforce_425M" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset wined3d-Invalid_Render_States
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#33988] Ignore invalid render states in wined3d_device_set_render_state
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/wined3d/device.c
|
||||
# |
|
||||
if test "$enable_wined3d_Invalid_Render_States" -eq 1; then
|
||||
patch_apply wined3d-Invalid_Render_States/0001-wined3d-Ignore-invalid-render-states.patch
|
||||
(
|
||||
echo '+ { "Józef Kucia", "wined3d: Ignore invalid render states.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset wined3d-MESA_GPU_Info
|
||||
# |
|
||||
# | This patchset has the following (direct or indirect) dependencies:
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,35 @@
|
||||
From 7543fa04f189e57eb56c7d697920342e8f28b0de Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?J=C3=B3zef=20Kucia?= <jkucia@codeweavers.com>
|
||||
Date: Sun, 10 Jan 2016 17:59:00 +0100
|
||||
Subject: wined3d: Ignore invalid render states.
|
||||
|
||||
---
|
||||
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 7c5a4c2..b0f4bf4 100644
|
||||
--- a/dlls/wined3d/device.c
|
||||
+++ b/dlls/wined3d/device.c
|
||||
@@ -2027,10 +2027,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("Ignoring unrecognized render state %#x, value %#x.\n", state, value);
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ old_value = device->state.render_states[state];
|
||||
device->update_state->render_states[state] = value;
|
||||
|
||||
/* Handle recording of state blocks. */
|
||||
--
|
||||
2.6.4
|
||||
|
1
patches/wined3d-Invalid_Render_States/definition
Normal file
1
patches/wined3d-Invalid_Render_States/definition
Normal file
@@ -0,0 +1 @@
|
||||
Fixes: [33988] Ignore invalid render states in wined3d_device_set_render_state
|
Reference in New Issue
Block a user