From 229df24ae8dc2eaebd9e092be80e7a9975555fd6 Mon Sep 17 00:00:00 2001 From: Gina Peter Banyard Date: Tue, 7 Jan 2025 23:27:59 +0000 Subject: [PATCH] Zend/GC: Add zend_get_gc_buffer_add_ht() function --- Zend/zend_gc.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Zend/zend_gc.h b/Zend/zend_gc.h index a52de1bfcfa..262d656c24e 100644 --- a/Zend/zend_gc.h +++ b/Zend/zend_gc.h @@ -141,6 +141,18 @@ static zend_always_inline void zend_get_gc_buffer_add_obj( gc_buffer->cur++; } +static zend_always_inline void zend_get_gc_buffer_add_ht( + zend_get_gc_buffer *gc_buffer, HashTable *ht) { + if (GC_FLAGS(ht) & IS_ARRAY_IMMUTABLE) { + return; + } + if (UNEXPECTED(gc_buffer->cur == gc_buffer->end)) { + zend_get_gc_buffer_grow(gc_buffer); + } + ZVAL_ARR(gc_buffer->cur, ht); + gc_buffer->cur++; +} + static zend_always_inline void zend_get_gc_buffer_add_ptr( zend_get_gc_buffer *gc_buffer, void *ptr) { if (UNEXPECTED(gc_buffer->cur == gc_buffer->end)) {