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: