Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: ddcb0827a4e5b2deda9c691e72a8fec6c4f9dd4e
https://github.com/WebKit/WebKit/commit/ddcb0827a4e5b2deda9c691e72a8fec6c4f9dd4e
Author: Sosuke Suzuki <[email protected]>
Date: 2026-03-11 (Wed, 11 Mar 2026)
Changed paths:
M Source/bmalloc/libpas/src/libpas/pas_immortal_heap.c
Log Message:
-----------
[libpas] Explicit OOM crash when immortal heap exhausts compact heap
reservation
https://bugs.webkit.org/show_bug.cgi?id=309638
Reviewed by Yusuke Suzuki.
On macOS ARM64 release builds, PAS_ENABLE_ASSERT is 0 (pas_config.h), making
PAS_ASSERT a no-op. When the compact heap reservation is exhausted,
pas_immortal_heap_allocate_with_manual_alignment() silently returns NULL instead
of crashing. The caller pas_segregated_exclusive_view_create() then dereferences
the NULL pointer, causing SIGSEGV at address 0x0.
Replace PAS_ASSERT(allocation_result.result) with an explicit null check that
calls pas_panic_on_out_of_memory_error(), which is unconditional and
PAS_NO_RETURN.
* Source/bmalloc/libpas/src/libpas/pas_immortal_heap.c:
(pas_immortal_heap_allocate_with_manual_alignment):
Canonical link: https://commits.webkit.org/309075@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications