diff --git a/patches/ntdll-NtAlertThreadByThreadId/0013-ntdll-Reimplement-SRW-locks-on-top-of-Win32-futexes.patch b/patches/ntdll-NtAlertThreadByThreadId/0013-ntdll-Reimplement-SRW-locks-on-top-of-Win32-futexes.patch index 67075eb6..5460cd58 100644 --- a/patches/ntdll-NtAlertThreadByThreadId/0013-ntdll-Reimplement-SRW-locks-on-top-of-Win32-futexes.patch +++ b/patches/ntdll-NtAlertThreadByThreadId/0013-ntdll-Reimplement-SRW-locks-on-top-of-Win32-futexes.patch @@ -1,4 +1,4 @@ -From b29db29cb8eb0fa8ba0153438c777417f2b41387 Mon Sep 17 00:00:00 2001 +From 76e611ca640aeab6ff440d6bfad61e8b8e899093 Mon Sep 17 00:00:00 2001 From: Zebediah Figura Date: Sun, 22 Nov 2020 20:51:10 -0600 Subject: [PATCH] ntdll: Reimplement SRW locks on top of Win32 futexes. @@ -798,20 +798,21 @@ index 0262e50d980..968d636f86e 100644 static FORCEINLINE HANDLE WINAPI GetCurrentProcess(void) diff --git a/include/winnt.h b/include/winnt.h -index ff1a6f4e90e..38f4f3e01a5 100644 +index 98233348cd6..a478aa5128a 100644 --- a/include/winnt.h +++ b/include/winnt.h -@@ -6910,7 +6910,9 @@ static inline BOOLEAN BitScanReverse(DWORD *index, DWORD mask) +@@ -6910,8 +6910,10 @@ static inline BOOLEAN BitScanReverse(DWORD *index, DWORD mask) #pragma intrinsic(_InterlockedExchange) #pragma intrinsic(_InterlockedExchangeAdd) #pragma intrinsic(_InterlockedIncrement) +#pragma intrinsic(_InterlockedIncrement16) #pragma intrinsic(_InterlockedDecrement) + #pragma intrinsic(_InterlockedOr) +#pragma intrinsic(_InterlockedDecrement16) long _InterlockedCompareExchange(long volatile*,long,long); long long _InterlockedCompareExchange64(long long volatile*,long long,long long); -@@ -6918,15 +6920,22 @@ long long _InterlockedCompareExchange64(long long volatile*,long long,long long) +@@ -6919,16 +6921,23 @@ long long _InterlockedCompareExchange64(long long volatile*,long long,long long) unsigned char _InterlockedCompareExchange128(volatile __int64 *, __int64, __int64, __int64 *); #endif long _InterlockedDecrement(long volatile*); @@ -819,6 +820,7 @@ index ff1a6f4e90e..38f4f3e01a5 100644 long _InterlockedExchange(long volatile*,long); long _InterlockedExchangeAdd(long volatile*,long); long _InterlockedIncrement(long volatile*); + long _InterlockedOr(long volatile *,long); +short _InterlockedIncrement16(short volatile *); static FORCEINLINE LONG WINAPI InterlockedCompareExchange( LONG volatile *dest, LONG xchg, LONG compare ) @@ -834,8 +836,8 @@ index ff1a6f4e90e..38f4f3e01a5 100644 static FORCEINLINE LONGLONG WINAPI InterlockedCompareExchange64( LONGLONG volatile *dest, LONGLONG xchg, LONGLONG compare ) { return _InterlockedCompareExchange64( (long long volatile *)dest, compare, xchg ); -@@ -6959,6 +6968,11 @@ static FORCEINLINE LONG WINAPI InterlockedDecrement( LONG volatile *dest ) - return _InterlockedDecrement( (long volatile *)dest ); +@@ -6966,6 +6975,11 @@ static FORCEINLINE LONG WINAPI InterlockedOr( LONG volatile *dest, LONG val ) + return _InterlockedOr( (long volatile *)dest, val ); } +static FORCEINLINE short WINAPI InterlockedDecrement16( short volatile *dest ) @@ -846,7 +848,7 @@ index ff1a6f4e90e..38f4f3e01a5 100644 #ifndef __i386__ #pragma intrinsic(_InterlockedCompareExchangePointer) -@@ -7040,11 +7054,21 @@ static FORCEINLINE LONG WINAPI InterlockedIncrement( LONG volatile *dest ) +@@ -7092,11 +7106,21 @@ static FORCEINLINE LONG WINAPI InterlockedIncrement( LONG volatile *dest ) return __sync_add_and_fetch( dest, 1 ); } diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 6cab988a..92b431ef 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -51,7 +51,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "04a9c9eba77f56d61d615f1147590c67b466bdf8" + echo "a952453888fb5df3c70edf357820bc924b4f3e7f" } # Show version information @@ -4503,13 +4503,12 @@ fi # | * [#49998] widl - Support WinRT idls # | # | Modified files: -# | * include/Makefile.in, include/windows.foundation.idl, include/windows.media.speechsynthesis.idl, tools/widl/expr.c, -# | tools/widl/hash.c, tools/widl/hash.h, tools/widl/header.c, tools/widl/parser.l, tools/widl/parser.y, -# | tools/widl/typegen.c, tools/widl/typelib.c, tools/widl/typetree.c, tools/widl/typetree.h, tools/widl/utils.c, -# | tools/widl/utils.h, tools/widl/widltypes.h +# | * include/windows.foundation.idl, include/windows.media.speechsynthesis.idl, tools/widl/expr.c, tools/widl/hash.c, +# | tools/widl/hash.h, tools/widl/header.c, tools/widl/parser.l, tools/widl/parser.y, tools/widl/typegen.c, +# | tools/widl/typelib.c, tools/widl/typetree.c, tools/widl/typetree.h, tools/widl/utils.c, tools/widl/utils.h, +# | tools/widl/widltypes.h # | if test "$enable_widl_winrt_support" -eq 1; then - patch_apply widl-winrt-support/0001-include-Add-windows.media.speechsynthesis.idl-draft.patch patch_apply widl-winrt-support/0002-widl-Support-WinRT-marshaling_behavior-attribute-par.patch patch_apply widl-winrt-support/0003-widl-Support-WinRT-mta-threading-attribute-parsing.patch patch_apply widl-winrt-support/0004-widl-Support-WinRT-exclusiveto-attribute-parsing.patch diff --git a/patches/widl-winrt-support/0001-include-Add-windows.media.speechsynthesis.idl-draft.patch b/patches/widl-winrt-support/0001-include-Add-windows.media.speechsynthesis.idl-draft.patch deleted file mode 100644 index 0e86e896..00000000 --- a/patches/widl-winrt-support/0001-include-Add-windows.media.speechsynthesis.idl-draft.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 11edca0fcedec43e65b46fb83369ae5c132830d6 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?R=C3=A9mi=20Bernon?= -Date: Wed, 23 Sep 2020 19:23:45 +0200 -Subject: [PATCH] include: Add windows.media.speechsynthesis.idl draft. - ---- - include/Makefile.in | 1 + - include/windows.media.speechsynthesis.idl | 47 +++++++++++++++++++++++ - 2 files changed, 48 insertions(+) - create mode 100644 include/windows.media.speechsynthesis.idl - -diff --git a/include/Makefile.in b/include/Makefile.in -index 74a1d8e0c89..096fb4554e5 100644 ---- a/include/Makefile.in -+++ b/include/Makefile.in -@@ -745,6 +745,7 @@ SOURCES = \ - windef.h \ - windns.h \ - windows.foundation.idl \ -+ windows.media.speechsynthesis.idl \ - windows.h \ - windowscontracts.idl \ - windowsx.h \ -diff --git a/include/windows.media.speechsynthesis.idl b/include/windows.media.speechsynthesis.idl -new file mode 100644 -index 00000000000..7a1de5fcba6 ---- /dev/null -+++ b/include/windows.media.speechsynthesis.idl -@@ -0,0 +1,47 @@ -+/* -+ * Copyright 2020 RĂ©mi Bernon for CodeWeavers -+ * -+ * This library is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU Lesser General Public -+ * License as published by the Free Software Foundation; either -+ * version 2.1 of the License, or (at your option) any later version. -+ * -+ * This library is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * Lesser General Public License for more details. -+ * -+ * You should have received a copy of the GNU Lesser General Public -+ * License along with this library; if not, write to the Free Software -+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA -+ */ -+ -+#ifdef __WIDL__ -+#pragma winrt ns_prefix -+#endif -+ -+import "inspectable.idl"; -+import "windows.foundation.idl"; -+ -+namespace Windows { -+ namespace Media { -+ namespace SpeechSynthesis { -+ typedef enum VoiceGender VoiceGender; -+ interface IInstalledVoicesStatic; -+ interface IVoiceInformation; -+ } -+ } -+} -+ -+namespace Windows { -+ namespace Media { -+ namespace SpeechSynthesis { -+ [contract(Windows.Foundation.UniversalApiContract, 1.0)] -+ enum VoiceGender -+ { -+ Male = 0, -+ Female = 1 -+ }; -+ } -+ } -+} --- -2.29.2 - diff --git a/patches/windows.gaming.input-dll/0001-windows.gaming.input-Add-stub-dll.patch b/patches/windows.gaming.input-dll/0001-windows.gaming.input-Add-stub-dll.patch index 66a04e25..a0dad764 100644 --- a/patches/windows.gaming.input-dll/0001-windows.gaming.input-Add-stub-dll.patch +++ b/patches/windows.gaming.input-dll/0001-windows.gaming.input-Add-stub-dll.patch @@ -1,7 +1,7 @@ -From 0a5e3bf90552df0bbf21ecec922bd91fe8a27a3a Mon Sep 17 00:00:00 2001 +From 57e813244a401d27959d8689942e787fafcaa15b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Bernon?= Date: Fri, 9 Oct 2020 13:38:18 +0200 -Subject: [PATCH 1/9] windows.gaming.input: Add stub dll. +Subject: [PATCH] windows.gaming.input: Add stub dll. --- configure.ac | 1 + @@ -17,10 +17,10 @@ Subject: [PATCH 1/9] windows.gaming.input: Add stub dll. create mode 100644 include/windows.gaming.input.idl diff --git a/configure.ac b/configure.ac -index a8649a2e40b..3e717d5191f 100644 +index 6fbf7f2d4e5..bdcfe84f87d 100644 --- a/configure.ac +++ b/configure.ac -@@ -3822,6 +3822,7 @@ WINE_CONFIG_MAKEFILE(dlls/win32s16.dll16,enable_win16) +@@ -3850,6 +3850,7 @@ WINE_CONFIG_MAKEFILE(dlls/win32s16.dll16,enable_win16) WINE_CONFIG_MAKEFILE(dlls/win87em.dll16,enable_win16) WINE_CONFIG_MAKEFILE(dlls/winaspi.dll16,enable_win16) WINE_CONFIG_MAKEFILE(dlls/windebug.dll16,enable_win16) @@ -195,16 +195,16 @@ index 00000000000..2b6abc4dd84 + return S_OK; +} diff --git a/include/Makefile.in b/include/Makefile.in -index 91297753b12..8ae1091b8b7 100644 +index 466ac6fd5dc..24cc64a3407 100644 --- a/include/Makefile.in +++ b/include/Makefile.in -@@ -735,6 +735,7 @@ SOURCES = \ +@@ -753,6 +753,7 @@ SOURCES = \ windef.h \ windns.h \ windows.foundation.idl \ + windows.gaming.input.idl \ - windows.media.speechsynthesis.idl \ windows.h \ + windows.media.speechsynthesis.idl \ windowscontracts.idl \ diff --git a/include/windows.gaming.input.idl b/include/windows.gaming.input.idl new file mode 100644 @@ -237,5 +237,5 @@ index 00000000000..575f34ccb58 +import "inspectable.idl"; +import "windows.foundation.idl"; -- -2.28.0 +2.29.2 diff --git a/patches/windows.gaming.input-dll/0006-windows.gaming.input-Implement-IRawGameControllerSta.patch b/patches/windows.gaming.input-dll/0006-windows.gaming.input-Implement-IRawGameControllerSta.patch index 828b4e2f..26bb548c 100644 --- a/patches/windows.gaming.input-dll/0006-windows.gaming.input-Implement-IRawGameControllerSta.patch +++ b/patches/windows.gaming.input-dll/0006-windows.gaming.input-Implement-IRawGameControllerSta.patch @@ -1,7 +1,7 @@ -From 1f000cd4305f627a8ab8b725581075fa7a3d82ab Mon Sep 17 00:00:00 2001 +From 3d6807e5da2a30f33b7517a3d3a3457c53a4ebc7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Bernon?= Date: Mon, 12 Oct 2020 12:50:32 +0200 -Subject: [PATCH 6/9] windows.gaming.input: Implement IRawGameControllerStatics +Subject: [PATCH] windows.gaming.input: Implement IRawGameControllerStatics stubs. --- @@ -215,10 +215,10 @@ index dad5a196214..078043b0963 100644 0 }; diff --git a/include/Makefile.in b/include/Makefile.in -index 8ae1091b8b7..e26eafb7f6a 100644 +index 24cc64a3407..2f68c258f1b 100644 --- a/include/Makefile.in +++ b/include/Makefile.in -@@ -20,6 +20,7 @@ SOURCES = \ +@@ -21,6 +21,7 @@ SOURCES = \ appmodel.h \ asferr.h \ asptlb.idl \ @@ -226,16 +226,17 @@ index 8ae1091b8b7..e26eafb7f6a 100644 asynot.idl \ asysta.idl \ atlbase.h \ -@@ -736,7 +737,9 @@ SOURCES = \ +@@ -754,8 +755,10 @@ SOURCES = \ windns.h \ windows.foundation.idl \ windows.gaming.input.idl \ + windows.gaming.input.forcefeedback.idl \ + windows.h \ windows.media.speechsynthesis.idl \ + windows.system.idl \ - windows.h \ windowscontracts.idl \ windowsx.h \ + wine/debug.h \ diff --git a/include/asyncinfo.idl b/include/asyncinfo.idl new file mode 100644 index 00000000000..61784bc65ac @@ -791,10 +792,10 @@ index 00000000000..824441eaff9 + } +} diff --git a/loader/wine.inf.in b/loader/wine.inf.in -index 9d738859b81..ab18ab97e4c 100644 +index 8d65bfb72d1..9e02369f341 100644 --- a/loader/wine.inf.in +++ b/loader/wine.inf.in -@@ -714,6 +714,7 @@ HKLM,%MciExtStr%,"wvx",,"MPEGVideo" +@@ -718,6 +718,7 @@ HKLM,%MciExtStr%,"wvx",,"MPEGVideo" [Misc] HKLM,Software\Microsoft\WindowsRuntime\ActivatableClassId\Windows.Gaming.Input.Gamepad,"DllPath",2,"Windows.Gaming.Input.dll" @@ -803,5 +804,5 @@ index 9d738859b81..ab18ab97e4c 100644 HKLM,Software\Borland\Database Engine\Settings\SYSTEM\INIT,SHAREDMEMLOCATION,,9000 HKLM,Software\Clients\Mail,,2,"Native Mail Client" -- -2.28.0 +2.29.2 diff --git a/patches/windows.globalization-dll/0001-windows.globalization-Add-stub-dll.patch b/patches/windows.globalization-dll/0001-windows.globalization-Add-stub-dll.patch index f02280b8..08fcecdc 100644 --- a/patches/windows.globalization-dll/0001-windows.globalization-Add-stub-dll.patch +++ b/patches/windows.globalization-dll/0001-windows.globalization-Add-stub-dll.patch @@ -1,7 +1,7 @@ -From 22add75334045f50a22d3c14f4a7d9c3ed708742 Mon Sep 17 00:00:00 2001 +From 06487c40a8cc1cb928992d8873ed6e778d9e15b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Bernon?= Date: Fri, 28 Aug 2020 15:59:50 +0200 -Subject: [PATCH 1/5] windows.globalization: Add stub dll. +Subject: [PATCH] windows.globalization: Add stub dll. --- configure.ac | 1 + @@ -18,10 +18,10 @@ Subject: [PATCH 1/5] windows.globalization: Add stub dll. create mode 100644 include/windows.globalization.idl diff --git a/configure.ac b/configure.ac -index 3e717d5191f..187bd614387 100644 +index bdcfe84f87d..4654e994e29 100644 --- a/configure.ac +++ b/configure.ac -@@ -3823,6 +3823,7 @@ WINE_CONFIG_MAKEFILE(dlls/win87em.dll16,enable_win16) +@@ -3851,6 +3851,7 @@ WINE_CONFIG_MAKEFILE(dlls/win87em.dll16,enable_win16) WINE_CONFIG_MAKEFILE(dlls/winaspi.dll16,enable_win16) WINE_CONFIG_MAKEFILE(dlls/windebug.dll16,enable_win16) WINE_CONFIG_MAKEFILE(dlls/windows.gaming.input.dll) @@ -197,17 +197,17 @@ index 00000000000..840ce08c0c5 + return S_OK; +} diff --git a/include/Makefile.in b/include/Makefile.in -index e26eafb7f6a..74eeff2d830 100644 +index 2f68c258f1b..69837a1ca97 100644 --- a/include/Makefile.in +++ b/include/Makefile.in -@@ -738,6 +738,7 @@ SOURCES = \ +@@ -756,6 +756,7 @@ SOURCES = \ windows.foundation.idl \ windows.gaming.input.idl \ windows.gaming.input.forcefeedback.idl \ + windows.globalization.idl \ + windows.h \ windows.media.speechsynthesis.idl \ windows.system.idl \ - windows.h \ diff --git a/include/windows.globalization.idl b/include/windows.globalization.idl new file mode 100644 index 00000000000..c3f80999af5 @@ -242,10 +242,10 @@ index 00000000000..c3f80999af5 +namespace Windows { +} diff --git a/loader/wine.inf.in b/loader/wine.inf.in -index ab18ab97e4c..0c20b5b1098 100644 +index 9e02369f341..06bb1e68c24 100644 --- a/loader/wine.inf.in +++ b/loader/wine.inf.in -@@ -716,6 +716,7 @@ HKLM,%MciExtStr%,"wvx",,"MPEGVideo" +@@ -720,6 +720,7 @@ HKLM,%MciExtStr%,"wvx",,"MPEGVideo" HKLM,Software\Microsoft\WindowsRuntime\ActivatableClassId\Windows.Gaming.Input.Gamepad,"DllPath",2,"Windows.Gaming.Input.dll" HKLM,Software\Microsoft\WindowsRuntime\ActivatableClassId\Windows.Gaming.Input.RawGameController,"DllPath",2,"Windows.Gaming.Input.dll" HKLM,Software\Microsoft\WindowsRuntime\ActivatableClassId\Windows.Media.SpeechSynthesis.SpeechSynthesizer,"DllPath",2,"Windows.Media.Speech.dll" @@ -254,5 +254,5 @@ index ab18ab97e4c..0c20b5b1098 100644 HKLM,Software\Clients\Mail,,2,"Native Mail Client" HKLM,Software\Clients\Mail\Native Mail Client,,2,"Native Mail Client" -- -2.28.0 +2.29.2 diff --git a/patches/windows.globalization-dll/0002-windows.globalization-Implement-IGlobalizationPrefer.patch b/patches/windows.globalization-dll/0002-windows.globalization-Implement-IGlobalizationPrefer.patch index 6e2253fc..9ee8f79c 100644 --- a/patches/windows.globalization-dll/0002-windows.globalization-Implement-IGlobalizationPrefer.patch +++ b/patches/windows.globalization-dll/0002-windows.globalization-Implement-IGlobalizationPrefer.patch @@ -1,7 +1,7 @@ -From a5fb434c28607cd124e463eed2b4ef6c4e856983 Mon Sep 17 00:00:00 2001 +From 7892b025109656123c7253739c9c1b0f0f0b507c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Bernon?= Date: Tue, 13 Oct 2020 18:11:35 +0200 -Subject: [PATCH 2/5] windows.globalization: Implement +Subject: [PATCH] windows.globalization: Implement IGlobalizationPreferencesStatics stubs. --- @@ -197,17 +197,17 @@ index 840ce08c0c5..97afc941219 100644 }; diff --git a/include/Makefile.in b/include/Makefile.in -index 74eeff2d830..258813f7f15 100644 +index 69837a1ca97..d6ae2988493 100644 --- a/include/Makefile.in +++ b/include/Makefile.in -@@ -739,6 +739,7 @@ SOURCES = \ - windows.gaming.input.idl \ - windows.gaming.input.forcefeedback.idl \ - windows.globalization.idl \ -+ windows.system.userprofile.idl \ +@@ -760,6 +760,7 @@ SOURCES = \ + windows.h \ windows.media.speechsynthesis.idl \ windows.system.idl \ - windows.h \ ++ windows.system.userprofile.idl \ + windowscontracts.idl \ + windowsx.h \ + wine/debug.h \ diff --git a/include/windows.globalization.idl b/include/windows.globalization.idl index c3f80999af5..ac76455b847 100644 --- a/include/windows.globalization.idl @@ -303,5 +303,5 @@ index 00000000000..e2676f9dd89 + } +} -- -2.28.0 +2.29.2 diff --git a/staging/upstream-commit b/staging/upstream-commit index b4b5f440..efcc0dfc 100644 --- a/staging/upstream-commit +++ b/staging/upstream-commit @@ -1 +1 @@ -04a9c9eba77f56d61d615f1147590c67b466bdf8 +a952453888fb5df3c70edf357820bc924b4f3e7f