From 33260ea99b912a08ed5f6e774d9e289f2a9fd58c Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Thu, 1 Jul 2021 12:04:20 +0200 Subject: [PATCH] LibC: Fix jmp_buf layout on x86_64 This struct was too small on x86_64, but setjmp() would happily write past the end of it. This makes `test-js` run to completion on x86_64 :^) --- Userland/Libraries/LibC/setjmp.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Userland/Libraries/LibC/setjmp.h b/Userland/Libraries/LibC/setjmp.h index 8182eb9a00..f5258cdb1e 100644 --- a/Userland/Libraries/LibC/setjmp.h +++ b/Userland/Libraries/LibC/setjmp.h @@ -15,7 +15,13 @@ __BEGIN_DECLS struct __jmp_buf { +#ifdef __i386__ uint32_t regs[6]; +#elif __x86_64__ + uint64_t regs[8]; +#else +# error +#endif bool did_save_signal_mask; sigset_t saved_signal_mask; };