diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 17f72921..3ae0258d 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -434,6 +434,7 @@ patch_enable_all () enable_wtsapi32_WTSQueryUserToken="$1" enable_wuauserv_Dummy_Service="$1" enable_wusa_MSU_Package_Installer="$1" + enable_xinput9_1_0_Parentsrc="$1" } # Enable or disable all categories @@ -1505,6 +1506,9 @@ patch_enable () wusa-MSU_Package_Installer) enable_wusa_MSU_Package_Installer="$2" ;; + xinput9_1_0-Parentsrc) + enable_xinput9_1_0_Parentsrc="$2" + ;; *) return 1 ;; @@ -8973,6 +8977,21 @@ if test "$enable_wusa_MSU_Package_Installer" -eq 1; then ) >> "$patchlist" fi +# Patchset xinput9_1_0-Parentsrc +# | +# | This patchset fixes the following Wine bugs: +# | * [#42154] Build independent xinput9_1_0.dll instead of using forwards +# | +# | Modified files: +# | * dlls/xinput9_1_0/Makefile.in, dlls/xinput9_1_0/xinput9_1_0.spec +# | +if test "$enable_xinput9_1_0_Parentsrc" -eq 1; then + patch_apply xinput9_1_0-Parentsrc/0001-xinput9_1_0-Build-independent-xinput9_1_0.dll-instea.patch + ( + echo '+ { "Michael Müller", "xinput9_1_0: Build independent xinput9_1_0.dll instead of using forwards.", 1 },'; + ) >> "$patchlist" +fi + if test "$enable_patchlist" -eq 1; then diff --git a/patches/xinput9_1_0-Parentsrc/0001-xinput9_1_0-Build-independent-xinput9_1_0.dll-instea.patch b/patches/xinput9_1_0-Parentsrc/0001-xinput9_1_0-Build-independent-xinput9_1_0.dll-instea.patch new file mode 100644 index 00000000..012afa3d --- /dev/null +++ b/patches/xinput9_1_0-Parentsrc/0001-xinput9_1_0-Build-independent-xinput9_1_0.dll-instea.patch @@ -0,0 +1,39 @@ +From 41ab59191b4f8bd8604f9b4c8bdfd7cf6cad58c2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Michael=20M=C3=BCller?= +Date: Sat, 14 Jan 2017 19:58:48 +0100 +Subject: xinput9_1_0: Build independent xinput9_1_0.dll instead of using + forwards. + +--- + dlls/xinput9_1_0/Makefile.in | 4 ++++ + dlls/xinput9_1_0/xinput9_1_0.spec | 8 ++++---- + 2 files changed, 8 insertions(+), 4 deletions(-) + +diff --git a/dlls/xinput9_1_0/Makefile.in b/dlls/xinput9_1_0/Makefile.in +index 0c4b7e7a86f..bc39d2e8bff 100644 +--- a/dlls/xinput9_1_0/Makefile.in ++++ b/dlls/xinput9_1_0/Makefile.in +@@ -1,3 +1,7 @@ + MODULE = xinput9_1_0.dll ++PARENTSRC = ../xinput1_3 ++ ++C_SRCS = \ ++ xinput1_3_main.c + + RC_SRCS = version.rc +diff --git a/dlls/xinput9_1_0/xinput9_1_0.spec b/dlls/xinput9_1_0/xinput9_1_0.spec +index 5d95b3e84db..8833ffbf8cb 100644 +--- a/dlls/xinput9_1_0/xinput9_1_0.spec ++++ b/dlls/xinput9_1_0/xinput9_1_0.spec +@@ -1,4 +1,4 @@ +-@ stdcall XInputGetCapabilities(long long ptr) xinput1_3.XInputGetCapabilities +-@ stdcall XInputGetDSoundAudioDeviceGuids(long ptr ptr) xinput1_3.XInputGetDSoundAudioDeviceGuids +-@ stdcall XInputSetState(long ptr) xinput1_3.XInputSetState +-@ stdcall XInputGetState(long ptr) xinput1_3.XInputGetState ++@ stdcall XInputGetCapabilities(long long ptr) ++@ stdcall XInputGetDSoundAudioDeviceGuids(long ptr ptr) ++@ stdcall XInputSetState(long ptr) ++@ stdcall XInputGetState(long ptr) +-- +2.11.0 + diff --git a/patches/xinput9_1_0-Parentsrc/definition b/patches/xinput9_1_0-Parentsrc/definition new file mode 100644 index 00000000..4543a3c5 --- /dev/null +++ b/patches/xinput9_1_0-Parentsrc/definition @@ -0,0 +1 @@ +Fixes: [42154] Build independent xinput9_1_0.dll instead of using forwards