Module: wine Branch: master Commit: c0012ecdd79a698f2ddca9bdcd5e6bbf5a0fcf53 URL: https://source.winehq.org/git/wine.git/?a=commit;h=c0012ecdd79a698f2ddca9bdc...
Author: Alexandre Julliard julliard@winehq.org Date: Fri Jun 18 13:49:03 2021 +0200
ntdll: Ignore faults caused by alignment check on x86-64.
Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ntdll/unix/signal_x86_64.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/dlls/ntdll/unix/signal_x86_64.c b/dlls/ntdll/unix/signal_x86_64.c index c36699589d9..2cd133a1087 100644 --- a/dlls/ntdll/unix/signal_x86_64.c +++ b/dlls/ntdll/unix/signal_x86_64.c @@ -2280,6 +2280,11 @@ static void segv_handler( int signal, siginfo_t *siginfo, void *sigcontext ) if (!rec.ExceptionCode) return; break; case TRAP_x86_ALIGNFLT: /* Alignment check exception */ + if (EFL_sig(ucontext) & 0x00040000) + { + EFL_sig(ucontext) &= ~0x00040000; /* reset AC flag */ + return; + } rec.ExceptionCode = EXCEPTION_DATATYPE_MISALIGNMENT; break; default: