Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c0121e11c12f57c279705344e09bc1270491df97
      
https://github.com/WebKit/WebKit/commit/c0121e11c12f57c279705344e09bc1270491df97
  Author: Mark Lam <[email protected]>
  Date:   2026-09-04 (Fri, 04 Sep 2026)

  Changed paths:
    M Source/bmalloc/libpas/src/libpas/bmalloc_heap_flex_internal.h
    M Source/bmalloc/libpas/src/libpas/bmalloc_heap_inlines.h
    M Source/bmalloc/libpas/src/libpas/bmalloc_heap_iso_internal.h
    M Source/bmalloc/libpas/src/libpas/hotbit_heap_inlines.h
    M Source/bmalloc/libpas/src/libpas/iso_heap_inlines.h
    M Source/bmalloc/libpas/src/libpas/pas_local_allocator_inlines.h
    M Source/bmalloc/libpas/src/libpas/pas_try_allocate_intrinsic.h
    M Source/bmalloc/libpas/src/libpas/pas_try_reallocate.h
    M Source/bmalloc/libpas/src/libpas/tagged_bmalloc_heap_inlines.h
    M Source/bmalloc/libpas/src/libpas/thingy_heap.c

  Log Message:
  -----------
  Make SystemHeap-enabled failure actions equivalent to SystemHeap-disabled 
failure actions.
https://bugs.webkit.org/show_bug.cgi?id=323456
rdar://185783006

Reviewed by Marcus Plutowski.

This means:
1. non-"try" allocators should crash on failure to allocate memory.
2. "try" allocators just return a nullptr on failure to allocate memory.  See 
exception in (3) below.
3. For iso_try_reallocate allocators, existing SystemHeap-disabled allocators 
will also set errno
   to ENOMEM in addition to returning nullptr.  Make the SystemHeap-enabled 
path do the same

No new tests because failures to allocate memory is not a condition we can 
force, and the expected
behavior is to crash in some cases (which is not testable).

* Source/bmalloc/libpas/src/libpas/bmalloc_heap_flex_internal.h:
(bmalloc_try_reallocate_flex_inline):
(bmalloc_reallocate_flex_inline):
* Source/bmalloc/libpas/src/libpas/bmalloc_heap_inlines.h:
(bmalloc_try_reallocate_auxiliary_inline):
(bmalloc_reallocate_auxiliary_inline):
(bmalloc_try_reallocate_inline):
(bmalloc_reallocate_inline):
* Source/bmalloc/libpas/src/libpas/bmalloc_heap_iso_internal.h:
(bmalloc_try_iso_reallocate_array_by_size_inline):
(bmalloc_iso_reallocate_array_by_size_inline):
(bmalloc_try_iso_reallocate_array_by_count_inline):
(bmalloc_iso_reallocate_array_by_count_inline):
* Source/bmalloc/libpas/src/libpas/hotbit_heap_inlines.h:
(hotbit_try_reallocate_inline):
* Source/bmalloc/libpas/src/libpas/iso_heap_inlines.h:
(iso_try_reallocate_common_primitive_inline):
(iso_reallocate_common_primitive_inline):
(iso_try_reallocate_array_by_count_inline):
(iso_reallocate_array_by_count_inline):
(iso_try_reallocate_primitive_inline):
(iso_reallocate_primitive_inline):
* Source/bmalloc/libpas/src/libpas/pas_local_allocator_inlines.h:
(pas_local_allocator_try_allocate):
* Source/bmalloc/libpas/src/libpas/pas_try_allocate_intrinsic.h:
(pas_try_allocate_intrinsic_impl_casual_case):
* Source/bmalloc/libpas/src/libpas/pas_try_reallocate.h:
(pas_try_reallocate):
(pas_try_reallocate_intrinsic):
(pas_try_reallocate_single):
(pas_try_reallocate_array_by_size):
(pas_try_reallocate_array_by_count):
(pas_try_reallocate_primitive):
* Source/bmalloc/libpas/src/libpas/tagged_bmalloc_heap_inlines.h:
(tagged_bmalloc_try_reallocate_inline):
(tagged_bmalloc_reallocate_inline):
* Source/bmalloc/libpas/src/libpas/thingy_heap.c:
(thingy_try_reallocate_primitive):
(thingy_try_reallocate_array):

Canonical link: https://commits.webkit.org/320539@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to