diff options
author | moonshadow565 | 2023-12-13 00:55:59 +0100 |
---|---|---|
committer | moonshadow565 | 2023-12-13 00:55:59 +0100 |
commit | fc6b924fd8b9e4be749a4c754fd99444bfb628ba (patch) | |
tree | 919f28b48cc42b4a8641740f0bd33e372f800468 | |
parent | d4798a0f8779d6540d5168d4c447ce651259bed0 (diff) | |
download | aur-fc6b924fd8b9e4be749a4c754fd99444bfb628ba.tar.gz |
fixes for 13.23
-rw-r--r-- | .SRCINFO | 2 | ||||
-rw-r--r-- | 0011-ntdll-signal_set_full_context-amd64.patch | 16 | ||||
-rw-r--r-- | PKGBUILD | 6 |
3 files changed, 24 insertions, 0 deletions
@@ -117,11 +117,13 @@ pkgbase = wine-lol-staging source = 0005-LoL-client-slow-start-fix.patch source = 0008-ntdll-nopguard-call_vectored_handlers.patch source = 0009-kernel32-dont-create-console-when-not-cui.patch + source = 0011-ntdll-signal_set_full_context-amd64.patch sha256sums = SKIP sha256sums = SKIP sha256sums = 7607a84fd357a86bc8fb59d2cf002a3e471bd8ec78ecdb844b0b77b1ae6d11a0 sha256sums = 49dfbf7546c00958e2b426a61371eedf0119471e9998b354595d5c0ce6dab48b sha256sums = 2075ddc417ddd11954f76be753c88e04db28f0b3937e60508f178630dd5763eb sha256sums = b19443ba1e01014ab478b03ac84797df2d481432798259371d94e4ba2e7b317c + sha256sums = 8dfef7fdbeb4bf503f72c2b3a15033849f67197d6d9571135369b4b0183ea213 pkgname = wine-lol-staging diff --git a/0011-ntdll-signal_set_full_context-amd64.patch b/0011-ntdll-signal_set_full_context-amd64.patch new file mode 100644 index 000000000000..55989bb1d6a8 --- /dev/null +++ b/0011-ntdll-signal_set_full_context-amd64.patch @@ -0,0 +1,16 @@ +diff --git a/dlls/ntdll/unix/signal_x86_64.c b/dlls/ntdll/unix/signal_x86_64.c +index 84b3422d491..5b12e963c1e 100644 +--- a/dlls/ntdll/unix/signal_x86_64.c ++++ b/dlls/ntdll/unix/signal_x86_64.c +@@ -952,8 +952,9 @@ NTSTATUS signal_set_full_context( CONTEXT *context ) + { + NTSTATUS status = NtSetContextThread( GetCurrentThread(), context ); + +- if (!status && (context->ContextFlags & CONTEXT_INTEGER) == CONTEXT_INTEGER) +- amd64_thread_data()->syscall_frame->restore_flags |= CONTEXT_INTEGER; ++ unsigned int real_mask = CONTEXT_INTEGER & ~CONTEXT_AMD64; ++ if (!status && (context->ContextFlags & real_mask) == real_mask) ++ amd64_thread_data()->syscall_frame->restore_flags |= real_mask; + return status; + } + @@ -19,6 +19,7 @@ source=("git+https://gitlab.winehq.org/wine/wine-staging.git#tag=v${_winever}" "0005-LoL-client-slow-start-fix.patch" "0008-ntdll-nopguard-call_vectored_handlers.patch" "0009-kernel32-dont-create-console-when-not-cui.patch" + "0011-ntdll-signal_set_full_context-amd64.patch" ) sha256sums=('SKIP' @@ -27,6 +28,7 @@ sha256sums=('SKIP' '49dfbf7546c00958e2b426a61371eedf0119471e9998b354595d5c0ce6dab48b' '2075ddc417ddd11954f76be753c88e04db28f0b3937e60508f178630dd5763eb' 'b19443ba1e01014ab478b03ac84797df2d481432798259371d94e4ba2e7b317c' + '8dfef7fdbeb4bf503f72c2b3a15033849f67197d6d9571135369b4b0183ea213' ) depends=( @@ -129,6 +131,10 @@ prepare() { echo 'Apply 0009-kernel32-dont-create-console-when-not-cui.patch' patch -Np1 < "${srcdir}/0009-kernel32-dont-create-console-when-not-cui.patch" + # Fix NtSetContextThread syscall + echo 'Apply 00011-ntdll-signal_set_full_context-amd64.patch' + patch -Np1 < "${srcdir}/0011-ntdll-signal_set_full_context-amd64.patch" + # Clean up .orig files echo "Clean up .orig files" find ./ -name '*.orig' -delete |