Rebase against 78a8445a2a4a6f225386a8a9781e961d2c5517a4.

This commit is contained in:
Zebediah Figura 2019-01-29 18:30:45 -06:00
parent d2a48f1ad3
commit 53de6620d0
5 changed files with 60 additions and 511 deletions

View File

@ -52,7 +52,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "ca29ac4650f7f9a96cfaa75a7919ef007306cbbb"
echo "78a8445a2a4a6f225386a8a9781e961d2c5517a4"
}
# Show version information
@ -302,7 +302,6 @@ patch_enable_all ()
enable_stdole32_idl_Typelib="$1"
enable_stdole32_tlb_SLTG_Typelib="$1"
enable_taskmgr_Memory_Usage="$1"
enable_ucrtbase__o_="$1"
enable_uianimation_stubs="$1"
enable_urlmon_ftp_escape="$1"
enable_user32_DM_SETDEFID="$1"
@ -1071,9 +1070,6 @@ patch_enable ()
taskmgr-Memory_Usage)
enable_taskmgr_Memory_Usage="$2"
;;
ucrtbase-_o_)
enable_ucrtbase__o_="$2"
;;
uianimation-stubs)
enable_uianimation_stubs="$2"
;;
@ -6350,24 +6346,6 @@ if test "$enable_taskmgr_Memory_Usage" -eq 1; then
) >> "$patchlist"
fi
# Patchset ucrtbase-_o_
# |
# | This patchset fixes the following Wine bugs:
# | * [#44469] Multiple apps using Windows 10 v1507+ UCRT crash due to multiple missing api-ms-win-crt-
# | private-l1-1-0.dll._o__xxx stubs/forwards (Win10 DISM pkgmgr.exe, MS DirectX Shader Compiler)
# |
# | Modified files:
# | * dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec, dlls/ucrtbase/ucrtbase.spec
# |
if test "$enable_ucrtbase__o_" -eq 1; then
patch_apply ucrtbase-_o_/0001-api-ms-win-crt-private-l1-1-0-Update-to-10.0.17134.1.patch
patch_apply ucrtbase-_o_/0002-ucrtbase-Forward-a-few-functions-for-dxil.dll-and-pk.patch
(
printf '%s\n' '+ { "Fabian Maurer", "api-ms-win-crt-private-l1-1-0: Update to 10.0.17134.12 (WinBuild.160101.0800).", 1 },';
printf '%s\n' '+ { "Fabian Maurer", "ucrtbase: Forward a few functions for dxil.dll and pkgmgr.exe.", 1 },';
) >> "$patchlist"
fi
# Patchset uianimation-stubs
# |
# | This patchset fixes the following Wine bugs:

View File

@ -1,171 +0,0 @@
From 9113a99bada07a5482c25c86bcb309e45d584b5b Mon Sep 17 00:00:00 2001
From: Fabian Maurer <dark.shadow4@web.de>
Date: Sun, 2 Dec 2018 15:56:07 +0100
Subject: [PATCH 1/2] api-ms-win-crt-private-l1-1-0: Update to 10.0.17134.12
(WinBuild.160101.0800)
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
---
.../api-ms-win-crt-private-l1-1-0.spec | 31 ++++++++++++++++++-
1 file changed, 30 insertions(+), 1 deletion(-)
diff --git a/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec b/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec
index 60a9258cd1..9bddd3d98b 100644
--- a/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec
+++ b/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec
@@ -15,6 +15,7 @@
@ stub __BuildCatchObject
@ stub __BuildCatchObjectHelper
@ stdcall -arch=x86_64 __C_specific_handler(ptr long ptr ptr) ucrtbase.__C_specific_handler
+@ stub __C_specific_handler_noexcept
@ cdecl -arch=i386,x86_64,arm,arm64 __CxxDetectRethrow(ptr) ucrtbase.__CxxDetectRethrow
@ cdecl -arch=i386,x86_64,arm,arm64 __CxxExceptionFilter(ptr ptr long ptr) ucrtbase.__CxxExceptionFilter
@ cdecl -arch=i386,x86_64,arm,arm64 -norelay __CxxFrameHandler(ptr ptr ptr ptr) ucrtbase.__CxxFrameHandler
@@ -44,6 +45,7 @@
@ stub __report_gsfailure
@ cdecl __std_exception_copy(ptr ptr) ucrtbase.__std_exception_copy
@ cdecl __std_exception_destroy(ptr) ucrtbase.__std_exception_destroy
+@ stub __std_terminate
@ cdecl __std_type_info_compare(ptr ptr) ucrtbase.__std_type_info_compare
@ cdecl __std_type_info_destroy_list(ptr) ucrtbase.__std_type_info_destroy_list
@ cdecl __std_type_info_hash(ptr) ucrtbase.__std_type_info_hash
@@ -51,6 +53,7 @@
@ cdecl __unDName(ptr str long ptr ptr long) ucrtbase.__unDName
@ cdecl __unDNameEx(ptr str long ptr ptr ptr long) ucrtbase.__unDNameEx
@ cdecl __uncaught_exception() ucrtbase.__uncaught_exception
+@ stub __uncaught_exceptions
@ cdecl -arch=i386 -norelay _chkesp() ucrtbase._chkesp
@ cdecl -arch=i386 _except_handler2(ptr ptr ptr ptr) ucrtbase._except_handler2
@ cdecl -arch=i386 _except_handler3(ptr ptr ptr ptr) ucrtbase._except_handler3
@@ -87,6 +90,10 @@
@ stub _o__W_Getmonths
@ stub _o__W_Gettnames
@ stub _o__Wcsftime
+@ stub _o____lc_codepage_func
+@ stub _o____lc_collate_cp_func
+@ stub _o____lc_locale_name_func
+@ stub _o____mb_cur_max_func
@ stub _o___acrt_iob_func
@ stub _o___conio_common_vcprintf
@ stub _o___conio_common_vcprintf_p
@@ -135,6 +142,10 @@
@ stub _o___p__wpgmptr
@ stub _o___pctype_func
@ stub _o___pwctype_func
+@ stub _o___std_exception_copy
+@ stub _o___std_exception_destroy
+@ stub _o___std_type_info_destroy_list
+@ stub _o___std_type_info_name
@ stub _o___stdio_common_vfprintf
@ stub _o___stdio_common_vfprintf_p
@ stub _o___stdio_common_vfprintf_s
@@ -184,6 +195,7 @@
@ stub _o__cabs
@ stub _o__callnewh
@ stub _o__calloc_base
+@ stub _o__cexit
@ stub _o__cgets
@ stub _o__cgets_s
@ stub _o__cgetws
@@ -195,11 +207,15 @@
@ stub _o__chsize_s
@ stub _o__close
@ stub _o__commit
+@ stub _o__configthreadlocale
+@ stub _o__configure_narrow_argv
@ stub _o__configure_wide_argv
+@ stub _o__controlfp_s
@ stub _o__cputs
@ stub _o__cputws
@ stub _o__creat
@ stub _o__create_locale
+@ stub _o__crt_atexit
@ stub _o__ctime32_s
@ stub _o__ctime64_s
@ stub _o__cwait
@@ -231,6 +247,7 @@
@ stub _o__execve
@ stub _o__execvp
@ stub _o__execvpe
+@ stub _o__exit
@ stub _o__expand
@ stub _o__fclose_nolock
@ stub _o__fcloseall
@@ -301,6 +318,8 @@
@ stub _o__get_errno
@ stub _o__get_fmode
@ stub _o__get_heap_handle
+@ stub _o__get_initial_narrow_environment
+@ stub _o__get_initial_wide_environment
@ stub _o__get_invalid_parameter_handler
@ stub _o__get_narrow_winmain_command_line
@ stub _o__get_osfhandle
@@ -345,7 +364,9 @@
@ stub _o__i64toa_s
@ stub _o__i64tow
@ stub _o__i64tow_s
+@ stub _o__initialize_narrow_environment
@ cdecl _o__initialize_onexit_table(ptr) ucrtbase._o__initialize_onexit_table
+@ stub _o__initialize_wide_environment
@ stub _o__invalid_parameter_noinfo
@ stub _o__invalid_parameter_noinfo_noreturn
@ stub _o__isatty
@@ -617,6 +638,7 @@
@ stub _o__pclose
@ stub _o__pipe
@ stub _o__popen
+@ stub _o__purecall
@ stub _o__putc_nolock
@ stub _o__putch
@ stub _o__putch_nolock
@@ -638,9 +660,13 @@
@ stub _o__scalbf
@ stub _o__searchenv
@ stub _o__searchenv_s
+@ stub _o__seh_filter_dll
+@ stub _o__seh_filter_exe
@ stub _o__set_abort_behavior
+@ stub _o__set_app_type
@ stub _o__set_doserrno
@ stub _o__set_errno
+@ stub _o__set_fmode
@ stub _o__set_invalid_parameter_handler
@ stub _o__set_new_handler
@ stub _o__set_new_mode
@@ -910,6 +936,7 @@
@ stub _o_erfcl
@ stub _o_erff
@ stub _o_erfl
+@ stub _o_exit
@ stub _o_exp
@ stub _o_exp2
@ stub _o_exp2f
@@ -1026,7 +1053,7 @@
@ stub _o_mbstowcs
@ stub _o_mbstowcs_s
@ stub _o_mbtowc
-@ stub _o_memset
+@ stub _o_memcpy_s
@ stub _o_modf
@ stub _o_modff
@ stub _o_nan
@@ -1061,6 +1088,7 @@
@ stub _o_remquo
@ stub _o_remquof
@ stub _o_remquol
+@ stub _o_rename
@ stub _o_rewind
@ stub _o_rint
@ stub _o_rintf
@@ -1076,6 +1104,7 @@
@ stub _o_scalbnl
@ stub _o_set_terminate
@ stub _o_setbuf
+@ stub _o_setlocale
@ stub _o_setvbuf
@ stub _o_sin
@ stub _o_sinf
--
2.19.2

View File

@ -1,265 +0,0 @@
From 0b5e33a0b9640085f0ca12efab9718189f0061bb Mon Sep 17 00:00:00 2001
From: Fabian Maurer <dark.shadow4@web.de>
Date: Sun, 2 Dec 2018 15:56:08 +0100
Subject: [PATCH 2/2] ucrtbase: Forward a few functions for dxil.dll and
pkgmgr.exe
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=44469
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
---
.../api-ms-win-crt-private-l1-1-0.spec | 38 +++++++++----------
dlls/ucrtbase/ucrtbase.spec | 38 +++++++++----------
2 files changed, 38 insertions(+), 38 deletions(-)
diff --git a/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec b/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec
index 9bddd3d98b..77be3a5515 100644
--- a/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec
+++ b/dlls/api-ms-win-crt-private-l1-1-0/api-ms-win-crt-private-l1-1-0.spec
@@ -127,11 +127,11 @@
@ stub _o___libm_sse2_sinf
@ stub _o___libm_sse2_tan
@ stub _o___libm_sse2_tanf
-@ stub _o___p___argc
+@ cdecl _o___p___argc() ucrtbase._o___p___argc
@ stub _o___p___argv
-@ stub _o___p___wargv
+@ cdecl _o___p___wargv() ucrtbase._o___p___wargv
@ stub _o___p__acmdln
-@ stub _o___p__commode
+@ cdecl _o___p__commode() ucrtbase._o___p__commode
@ stub _o___p__environ
@ stub _o___p__fmode
@ stub _o___p__mbcasemap
@@ -144,7 +144,7 @@
@ stub _o___pwctype_func
@ stub _o___std_exception_copy
@ stub _o___std_exception_destroy
-@ stub _o___std_type_info_destroy_list
+@ cdecl _o___std_type_info_destroy_list(ptr) ucrtbase._o___std_type_info_destroy_list
@ stub _o___std_type_info_name
@ stub _o___stdio_common_vfprintf
@ stub _o___stdio_common_vfprintf_p
@@ -207,15 +207,15 @@
@ stub _o__chsize_s
@ stub _o__close
@ stub _o__commit
-@ stub _o__configthreadlocale
+@ cdecl _o__configthreadlocale(long) ucrtbase._o__configthreadlocale
@ stub _o__configure_narrow_argv
-@ stub _o__configure_wide_argv
-@ stub _o__controlfp_s
+@ cdecl _o__configure_wide_argv(long) ucrtbase._o__configure_wide_argv
+@ cdecl _o__controlfp_s(ptr long long) ucrtbase._o__controlfp_s
@ stub _o__cputs
@ stub _o__cputws
@ stub _o__creat
@ stub _o__create_locale
-@ stub _o__crt_atexit
+@ cdecl _o__crt_atexit(ptr) ucrtbase._o__crt_atexit
@ stub _o__ctime32_s
@ stub _o__ctime64_s
@ stub _o__cwait
@@ -319,7 +319,7 @@
@ stub _o__get_fmode
@ stub _o__get_heap_handle
@ stub _o__get_initial_narrow_environment
-@ stub _o__get_initial_wide_environment
+@ cdecl _o__get_initial_wide_environment() ucrtbase._o__get_initial_wide_environment
@ stub _o__get_invalid_parameter_handler
@ stub _o__get_narrow_winmain_command_line
@ stub _o__get_osfhandle
@@ -366,7 +366,7 @@
@ stub _o__i64tow_s
@ stub _o__initialize_narrow_environment
@ cdecl _o__initialize_onexit_table(ptr) ucrtbase._o__initialize_onexit_table
-@ stub _o__initialize_wide_environment
+@ cdecl _o__initialize_wide_environment() ucrtbase._o__initialize_wide_environment
@ stub _o__invalid_parameter_noinfo
@ stub _o__invalid_parameter_noinfo_noreturn
@ stub _o__isatty
@@ -660,16 +660,16 @@
@ stub _o__scalbf
@ stub _o__searchenv
@ stub _o__searchenv_s
-@ stub _o__seh_filter_dll
-@ stub _o__seh_filter_exe
+@ cdecl _o__seh_filter_dll(long ptr) ucrtbase._o__seh_filter_dll
+@ cdecl _o__seh_filter_exe(long ptr) ucrtbase._o__seh_filter_exe
@ stub _o__set_abort_behavior
-@ stub _o__set_app_type
+@ cdecl _o__set_app_type(long) ucrtbase._o__set_app_type
@ stub _o__set_doserrno
@ stub _o__set_errno
-@ stub _o__set_fmode
+@ cdecl _o__set_fmode(long) ucrtbase._o__set_fmode
@ stub _o__set_invalid_parameter_handler
@ stub _o__set_new_handler
-@ stub _o__set_new_mode
+@ cdecl _o__set_new_mode(long) ucrtbase._o__set_new_mode
@ stub _o__set_thread_local_invalid_parameter_handler
@ stub _o__seterrormode
@ stub _o__setmbcp
@@ -919,7 +919,7 @@
@ stub _o_bsearch
@ stub _o_bsearch_s
@ stub _o_btowc
-@ stub _o_calloc
+@ cdecl _o_calloc(long long) ucrtbase._o_calloc
@ stub _o_cbrt
@ stub _o_cbrtf
@ stub _o_ceil
@@ -936,7 +936,7 @@
@ stub _o_erfcl
@ stub _o_erff
@ stub _o_erfl
-@ stub _o_exit
+@ cdecl _o_exit(long) ucrtbase._o_exit
@ stub _o_exp
@ stub _o_exp2
@ stub _o_exp2f
@@ -967,7 +967,7 @@
@ stub _o_fputws
@ stub _o_fread
@ stub _o_fread_s
-@ stub _o_free
+@ cdecl _o_free(ptr) ucrtbase._o_free
@ stub _o_freopen
@ stub _o_freopen_s
@ stub _o_frexp
@@ -1142,7 +1142,7 @@
@ stub _o_tmpfile_s
@ stub _o_tmpnam_s
@ stub _o_tolower
-@ stub _o_toupper
+@ cdecl _o_toupper(long) ucrtbase._o_toupper
@ stub _o_towlower
@ stub _o_towupper
@ stub _o_ungetc
diff --git a/dlls/ucrtbase/ucrtbase.spec b/dlls/ucrtbase/ucrtbase.spec
index 470979c24f..d3f72e891c 100644
--- a/dlls/ucrtbase/ucrtbase.spec
+++ b/dlls/ucrtbase/ucrtbase.spec
@@ -791,11 +791,11 @@
@ stub _o___libm_sse2_sinf
@ stub _o___libm_sse2_tan
@ stub _o___libm_sse2_tanf
-@ stub _o___p___argc
+@ cdecl _o___p___argc() MSVCRT___p___argc
@ stub _o___p___argv
-@ stub _o___p___wargv
+@ cdecl _o___p___wargv() MSVCRT___p___wargv
@ stub _o___p__acmdln
-@ stub _o___p__commode
+@ cdecl _o___p__commode() __p__commode
@ stub _o___p__environ
@ stub _o___p__fmode
@ stub _o___p__mbcasemap
@@ -808,7 +808,7 @@
@ stub _o___pwctype_func
@ stub _o___std_exception_copy
@ stub _o___std_exception_destroy
-@ stub _o___std_type_info_destroy_list
+@ cdecl _o___std_type_info_destroy_list(ptr) MSVCRT_type_info_destroy_list
@ stub _o___std_type_info_name
@ stub _o___stdio_common_vfprintf
@ stub _o___stdio_common_vfprintf_p
@@ -871,15 +871,15 @@
@ stub _o__chsize_s
@ stub _o__close
@ stub _o__commit
-@ stub _o__configthreadlocale
+@ cdecl _o__configthreadlocale(long) _configthreadlocale
@ stub _o__configure_narrow_argv
-@ stub _o__configure_wide_argv
-@ stub _o__controlfp_s
+@ cdecl _o__configure_wide_argv(long) _configure_wide_argv
+@ cdecl _o__controlfp_s(ptr long long) _controlfp_s
@ stub _o__cputs
@ stub _o__cputws
@ stub _o__creat
@ stub _o__create_locale
-@ stub _o__crt_atexit
+@ cdecl _o__crt_atexit(ptr) MSVCRT__crt_atexit
@ stub _o__ctime32_s
@ stub _o__ctime64_s
@ stub _o__cwait
@@ -983,7 +983,7 @@
@ stub _o__get_fmode
@ stub _o__get_heap_handle
@ stub _o__get_initial_narrow_environment
-@ stub _o__get_initial_wide_environment
+@ cdecl _o__get_initial_wide_environment() _get_initial_wide_environment
@ stub _o__get_invalid_parameter_handler
@ stub _o__get_narrow_winmain_command_line
@ stub _o__get_osfhandle
@@ -1030,7 +1030,7 @@
@ stub _o__i64tow_s
@ stub _o__initialize_narrow_environment
@ cdecl _o__initialize_onexit_table(ptr) MSVCRT__initialize_onexit_table
-@ stub _o__initialize_wide_environment
+@ cdecl _o__initialize_wide_environment() _initialize_wide_environment
@ stub _o__invalid_parameter_noinfo
@ stub _o__invalid_parameter_noinfo_noreturn
@ stub _o__isatty
@@ -1324,16 +1324,16 @@
@ stub _o__scalbf
@ stub _o__searchenv
@ stub _o__searchenv_s
-@ stub _o__seh_filter_dll
-@ stub _o__seh_filter_exe
+@ cdecl _o__seh_filter_dll(long ptr) __CppXcptFilter
+@ cdecl _o__seh_filter_exe(long ptr) _XcptFilter
@ stub _o__set_abort_behavior
-@ stub _o__set_app_type
+@ cdecl _o__set_app_type(long) MSVCRT___set_app_type
@ stub _o__set_doserrno
@ stub _o__set_errno
-@ stub _o__set_fmode
+@ cdecl _o__set_fmode(long) MSVCRT__set_fmode
@ stub _o__set_invalid_parameter_handler
@ stub _o__set_new_handler
-@ stub _o__set_new_mode
+@ cdecl _o__set_new_mode(long) MSVCRT__set_new_mode
@ stub _o__set_thread_local_invalid_parameter_handler
@ stub _o__seterrormode
@ stub _o__setmbcp
@@ -1583,7 +1583,7 @@
@ stub _o_bsearch
@ stub _o_bsearch_s
@ stub _o_btowc
-@ stub _o_calloc
+@ cdecl _o_calloc(long long) MSVCRT_calloc
@ stub _o_cbrt
@ stub _o_cbrtf
@ stub _o_ceil
@@ -1600,7 +1600,7 @@
@ stub _o_erfcl
@ stub _o_erff
@ stub _o_erfl
-@ stub _o_exit
+@ cdecl _o_exit(long) MSVCRT_exit
@ stub _o_exp
@ stub _o_exp2
@ stub _o_exp2f
@@ -1631,7 +1631,7 @@
@ stub _o_fputws
@ stub _o_fread
@ stub _o_fread_s
-@ stub _o_free
+@ cdecl _o_free(ptr) MSVCRT_free
@ stub _o_freopen
@ stub _o_freopen_s
@ stub _o_frexp
@@ -1807,7 +1807,7 @@
@ stub _o_tmpfile_s
@ stub _o_tmpnam_s
@ stub _o_tolower
-@ stub _o_toupper
+@ cdecl _o_toupper(long) MSVCRT__toupper
@ stub _o_towlower
@ stub _o_towupper
@ stub _o_ungetc
--
2.19.2

View File

@ -1 +0,0 @@
Fixes: [44469] Multiple apps using Windows 10 v1507+ UCRT crash due to multiple missing api-ms-win-crt-private-l1-1-0.dll._o__xxx stubs/forwards (Win10 DISM pkgmgr.exe, MS DirectX Shader Compiler)

View File

@ -1,23 +1,23 @@
From 0a01c848f9f56a720d815fdd01a36b0f89672756 Mon Sep 17 00:00:00 2001
From 870c465ab6580a54d4fe4494bdaf572cf0351f7c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Thu, 20 Jul 2017 13:50:07 +0200
Subject: [PATCH] wined3d: Implement all 8 d3d11 color write masks.
---
dlls/d3d11/device.c | 29 ++++++++++-----------
dlls/d3d11/device.c | 29 ++++++++---------
dlls/d3d11/state.c | 4 ---
dlls/wined3d/context.c | 10 +++-----
dlls/wined3d/device.c | 6 ++---
dlls/wined3d/state.c | 57 +++++++++++++++++++-----------------------
dlls/wined3d/stateblock.c | 10 +++++---
dlls/wined3d/surface.c | 7 +++---
dlls/wined3d/utils.c | 6 ++++-
dlls/wined3d/context.c | 10 +++---
dlls/wined3d/device.c | 6 ++--
dlls/wined3d/state.c | 57 ++++++++++++++++------------------
dlls/wined3d/stateblock.c | 11 ++++---
dlls/wined3d/surface.c | 7 ++---
dlls/wined3d/utils.c | 6 +++-
dlls/wined3d/wined3d_private.h | 1 +
include/wine/wined3d.h | 14 ++++++++++-
10 files changed, 73 insertions(+), 71 deletions(-)
include/wine/wined3d.h | 14 ++++++++-
10 files changed, 74 insertions(+), 71 deletions(-)
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
index df754de..43cda2e 100644
index 7ad3d9b5..080c7829 100644
--- a/dlls/d3d11/device.c
+++ b/dlls/d3d11/device.c
@@ -702,6 +702,7 @@ static void STDMETHODCALLTYPE d3d11_immediate_context_OMSetBlendState(ID3D11Devi
@ -71,7 +71,7 @@ index df754de..43cda2e 100644
}
diff --git a/dlls/d3d11/state.c b/dlls/d3d11/state.c
index 6de3502..2051749 100644
index 6de35029..20517498 100644
--- a/dlls/d3d11/state.c
+++ b/dlls/d3d11/state.c
@@ -347,10 +347,6 @@ HRESULT d3d_blend_state_create(struct d3d_device *device, const D3D11_BLEND_DESC
@ -86,7 +86,7 @@ index 6de3502..2051749 100644
/* glEnableIndexedEXT(GL_BLEND, ...) */
diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
index 9784f38..0a99231 100644
index 4096673d..c326f3d5 100644
--- a/dlls/wined3d/context.c
+++ b/dlls/wined3d/context.c
@@ -2769,7 +2769,7 @@ void context_apply_blit_state(struct wined3d_context *context, const struct wine
@ -111,7 +111,7 @@ index 9784f38..0a99231 100644
context->last_was_rhw = TRUE;
context_invalidate_state(context, STATE_VDECL); /* because of last_was_rhw = TRUE */
@@ -4854,7 +4852,7 @@ void draw_primitive(struct wined3d_device *device, const struct wined3d_state *s
@@ -4867,7 +4865,7 @@ void draw_primitive(struct wined3d_device *device, const struct wined3d_state *s
if (!(rtv = fb->render_targets[i]) || rtv->format->id == WINED3DFMT_NULL)
continue;
@ -121,7 +121,7 @@ index 9784f38..0a99231 100644
wined3d_rendertarget_view_load_location(rtv, context, rtv->resource->draw_binding);
wined3d_rendertarget_view_invalidate_location(rtv, ~rtv->resource->draw_binding);
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 5515b27..8ab43c6 100644
index dee99dcd..c7563566 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -392,10 +392,8 @@ void device_clear_render_targets(struct wined3d_device *device, UINT rt_count, c
@ -138,7 +138,7 @@ index 5515b27..8ab43c6 100644
checkGLcall("glClearColor");
clear_mask = clear_mask | GL_COLOR_BUFFER_BIT;
diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
index 42c109d..1941a6a 100644
index 8708aa09..8cb9a7b5 100644
--- a/dlls/wined3d/state.c
+++ b/dlls/wined3d/state.c
@@ -1554,9 +1554,6 @@ static void state_debug_monitor(struct wined3d_context *context, const struct wi
@ -201,7 +201,7 @@ index 42c109d..1941a6a 100644
}
static void state_localviewer(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id)
@@ -4681,18 +4668,26 @@ const struct StateEntryTemplate misc_state_template[] =
@@ -4661,18 +4648,26 @@ const struct StateEntryTemplate misc_state_template[] =
{ STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), { STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), state_msaa_w }, WINED3D_GL_EXT_NONE },
{ STATE_RENDER(WINED3D_RS_MULTISAMPLEMASK), { STATE_RENDER(WINED3D_RS_MULTISAMPLEMASK), state_multisampmask }, WINED3D_GL_EXT_NONE },
{ STATE_RENDER(WINED3D_RS_DEBUGMONITORTOKEN), { STATE_RENDER(WINED3D_RS_DEBUGMONITORTOKEN), state_debug_monitor }, WINED3D_GL_EXT_NONE },
@ -236,7 +236,7 @@ index 42c109d..1941a6a 100644
{ STATE_RENDER(WINED3D_RS_ZVISIBLE), { STATE_RENDER(WINED3D_RS_ZVISIBLE), state_zvisible }, WINED3D_GL_EXT_NONE },
/* Samplers */
diff --git a/dlls/wined3d/stateblock.c b/dlls/wined3d/stateblock.c
index 0b2ce50..7634ccc 100644
index 1c8e6ade..d697ed50 100644
--- a/dlls/wined3d/stateblock.c
+++ b/dlls/wined3d/stateblock.c
@@ -44,6 +44,10 @@ static const DWORD pixel_states_render[] =
@ -250,35 +250,43 @@ index 0b2ce50..7634ccc 100644
WINED3D_RS_DEPTHBIAS,
WINED3D_RS_DESTBLEND,
WINED3D_RS_DESTBLENDALPHA,
@@ -1245,7 +1249,6 @@ static void state_init_default(struct wined3d_state *state, const struct wined3d
tmpfloat.f = d3d_info->limits.pointsize_max;
state->render_states[WINED3D_RS_POINTSIZE_MAX] = tmpfloat.d;
state->render_states[WINED3D_RS_INDEXEDVERTEXBLENDENABLE] = FALSE;
- state->render_states[WINED3D_RS_COLORWRITEENABLE] = 0x0000000f;
tmpfloat.f = 0.0f;
state->render_states[WINED3D_RS_TWEENFACTOR] = tmpfloat.d;
state->render_states[WINED3D_RS_BLENDOP] = WINED3D_BLEND_OP_ADD;
@@ -1271,9 +1274,6 @@ static void state_init_default(struct wined3d_state *state, const struct wined3d
state->render_states[WINED3D_RS_BACK_STENCILZFAIL] = WINED3D_STENCIL_OP_KEEP;
state->render_states[WINED3D_RS_BACK_STENCILPASS] = WINED3D_STENCIL_OP_KEEP;
state->render_states[WINED3D_RS_BACK_STENCILFUNC] = WINED3D_CMP_ALWAYS;
- state->render_states[WINED3D_RS_COLORWRITEENABLE1] = 0x0000000f;
- state->render_states[WINED3D_RS_COLORWRITEENABLE2] = 0x0000000f;
- state->render_states[WINED3D_RS_COLORWRITEENABLE3] = 0x0000000f;
state->render_states[WINED3D_RS_SRGBWRITEENABLE] = 0;
state->render_states[WINED3D_RS_DEPTHBIAS] = 0;
state->render_states[WINED3D_RS_WRAP8] = 0;
@@ -1288,6 +1288,8 @@ static void state_init_default(struct wined3d_state *state, const struct wined3d
state->render_states[WINED3D_RS_SRCBLENDALPHA] = WINED3D_BLEND_ONE;
state->render_states[WINED3D_RS_DESTBLENDALPHA] = WINED3D_BLEND_ZERO;
state->render_states[WINED3D_RS_BLENDOPALPHA] = WINED3D_BLEND_OP_ADD;
+ for (i = 0; i < MAX_RENDER_TARGETS; ++i)
+ state->render_states[WINED3D_RS_COLORWRITE(i)] = 0x0000000f;
@@ -1162,6 +1166,7 @@ void CDECL wined3d_stateblock_apply(const struct wined3d_stateblock *stateblock)
/* Texture Stage States - Put directly into state block, we will call function below */
for (i = 0; i < MAX_TEXTURES; ++i)
static void init_default_render_states(DWORD rs[WINEHIGHEST_RENDER_STATE + 1], const struct wined3d_d3d_info *d3d_info)
{
+ unsigned int i;
union
{
struct wined3d_line_pattern lp;
@@ -1255,7 +1260,6 @@ static void init_default_render_states(DWORD rs[WINEHIGHEST_RENDER_STATE + 1], c
tmpfloat.f = d3d_info->limits.pointsize_max;
rs[WINED3D_RS_POINTSIZE_MAX] = tmpfloat.d;
rs[WINED3D_RS_INDEXEDVERTEXBLENDENABLE] = FALSE;
- rs[WINED3D_RS_COLORWRITEENABLE] = 0x0000000f;
tmpfloat.f = 0.0f;
rs[WINED3D_RS_TWEENFACTOR] = tmpfloat.d;
rs[WINED3D_RS_BLENDOP] = WINED3D_BLEND_OP_ADD;
@@ -1281,9 +1285,6 @@ static void init_default_render_states(DWORD rs[WINEHIGHEST_RENDER_STATE + 1], c
rs[WINED3D_RS_BACK_STENCILZFAIL] = WINED3D_STENCIL_OP_KEEP;
rs[WINED3D_RS_BACK_STENCILPASS] = WINED3D_STENCIL_OP_KEEP;
rs[WINED3D_RS_BACK_STENCILFUNC] = WINED3D_CMP_ALWAYS;
- rs[WINED3D_RS_COLORWRITEENABLE1] = 0x0000000f;
- rs[WINED3D_RS_COLORWRITEENABLE2] = 0x0000000f;
- rs[WINED3D_RS_COLORWRITEENABLE3] = 0x0000000f;
rs[WINED3D_RS_SRGBWRITEENABLE] = 0;
rs[WINED3D_RS_DEPTHBIAS] = 0;
rs[WINED3D_RS_WRAP8] = 0;
@@ -1298,6 +1299,8 @@ static void init_default_render_states(DWORD rs[WINEHIGHEST_RENDER_STATE + 1], c
rs[WINED3D_RS_SRCBLENDALPHA] = WINED3D_BLEND_ONE;
rs[WINED3D_RS_DESTBLENDALPHA] = WINED3D_BLEND_ZERO;
rs[WINED3D_RS_BLENDOPALPHA] = WINED3D_BLEND_OP_ADD;
+ for (i = 0; i < MAX_RENDER_TARGETS; ++i)
+ rs[WINED3D_RS_COLORWRITE(i)] = 0x0000000f;
}
static void state_init_default(struct wined3d_state *state, const struct wined3d_d3d_info *d3d_info)
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index 5f5c53a..3bb891e 100644
index 0ee2f826..9022f421 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -160,6 +160,7 @@ static void texture2d_blt_fbo(const struct wined3d_device *device, struct wined3
@ -303,10 +311,10 @@ index 5f5c53a..3bb891e 100644
gl_info->gl_ops.gl.p_glDisable(GL_SCISSOR_TEST);
context_invalidate_state(context, STATE_RENDER(WINED3D_RS_SCISSORTESTENABLE));
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
index 73e8cf2..2cbc990 100644
index dd70d3fc..bea118ac 100644
--- a/dlls/wined3d/utils.c
+++ b/dlls/wined3d/utils.c
@@ -4751,7 +4751,6 @@ const char *debug_d3drenderstate(enum wined3d_render_state state)
@@ -4752,7 +4752,6 @@ const char *debug_d3drenderstate(enum wined3d_render_state state)
D3DSTATE_TO_STR(WINED3D_RS_DEBUGMONITORTOKEN);
D3DSTATE_TO_STR(WINED3D_RS_POINTSIZE_MAX);
D3DSTATE_TO_STR(WINED3D_RS_INDEXEDVERTEXBLENDENABLE);
@ -314,7 +322,7 @@ index 73e8cf2..2cbc990 100644
D3DSTATE_TO_STR(WINED3D_RS_TWEENFACTOR);
D3DSTATE_TO_STR(WINED3D_RS_BLENDOP);
D3DSTATE_TO_STR(WINED3D_RS_POSITIONDEGREE);
@@ -4771,9 +4770,14 @@ const char *debug_d3drenderstate(enum wined3d_render_state state)
@@ -4772,9 +4771,14 @@ const char *debug_d3drenderstate(enum wined3d_render_state state)
D3DSTATE_TO_STR(WINED3D_RS_BACK_STENCILZFAIL);
D3DSTATE_TO_STR(WINED3D_RS_BACK_STENCILPASS);
D3DSTATE_TO_STR(WINED3D_RS_BACK_STENCILFUNC);
@ -330,7 +338,7 @@ index 73e8cf2..2cbc990 100644
D3DSTATE_TO_STR(WINED3D_RS_DEPTHBIAS);
D3DSTATE_TO_STR(WINED3D_RS_WRAP8);
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 5b7ddfc..608cc7c 100644
index 1e3ec28d..c98b5717 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -272,6 +272,7 @@ static inline enum complex_fixup get_complex_fixup(struct color_fixup_desc fixup
@ -342,7 +350,7 @@ index 5b7ddfc..608cc7c 100644
struct min_lookup
{
diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h
index 3575f7e..9b4bcd9 100644
index 06f4f76e..5197e71f 100644
--- a/include/wine/wined3d.h
+++ b/include/wine/wined3d.h
@@ -402,8 +402,20 @@ enum wined3d_render_state
@ -368,5 +376,5 @@ index 3575f7e..9b4bcd9 100644
enum wined3d_blend
{
--
1.9.1
2.20.1