diff options
Diffstat (limited to '408.patch')
| -rw-r--r-- | 408.patch | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/408.patch b/408.patch new file mode 100644 index 0000000..b118b0a --- /dev/null +++ b/408.patch @@ -0,0 +1,76 @@ +From 2e0788825caa067aaab10e6b80f5fd958d92b0f0 Mon Sep 17 00:00:00 2001 +From: k0d3r1s <k0d3r1s@gmail.com> +Date: Thu, 4 Dec 2025 16:32:28 +0200 +Subject: [PATCH] The zval_dtor() alias of zval_ptr_dtor_nogc() has been + removed + +Call zval_ptr_dtor_nogc() directly instead +--- + src/php7/igbinary.c | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +diff --git a/src/php7/igbinary.c b/src/php7/igbinary.c +index 17eee3ca..b0a14185 100644 +--- a/src/php7/igbinary.c ++++ b/src/php7/igbinary.c +@@ -2601,7 +2601,7 @@ zend_always_inline static int igbinary_unserialize_array(struct igbinary_unseria + if (IGB_NEEDS_MORE_DATA(igsd, 1)) { + zend_error(E_WARNING, "igbinary_unserialize_array: end-of-data"); + cleanup: +- zval_dtor(z); ++ zval_ptr_dtor_nogc(z); + ZVAL_NULL(z); + return 1; + } +@@ -2759,7 +2759,7 @@ inline static int igbinary_unserialize_object_properties(struct igbinary_unseria + + if (IGB_NEEDS_MORE_DATA(igsd, 1)) { + zend_error(E_WARNING, "igbinary_unserialize_object_properties: end-of-data"); +- zval_dtor(z); ++ zval_ptr_dtor_nogc(z); + ZVAL_NULL(z); + return 1; + } +@@ -2778,13 +2778,13 @@ inline static int igbinary_unserialize_object_properties(struct igbinary_unseria + { + zend_long key_index = 0; + if (UNEXPECTED(igbinary_unserialize_long(igsd, key_type, &key_index))) { +- zval_dtor(z); ++ zval_ptr_dtor_nogc(z); + ZVAL_UNDEF(z); + return 1; + } + key_str = zend_long_to_str(key_index); + if (UNEXPECTED(key_str == NULL)) { +- zval_dtor(z); ++ zval_ptr_dtor_nogc(z); + ZVAL_UNDEF(z); + return 1; + } +@@ -2795,7 +2795,7 @@ inline static int igbinary_unserialize_object_properties(struct igbinary_unseria + case igbinary_type_string_id32: + key_str = igbinary_unserialize_string(igsd, key_type); + if (UNEXPECTED(key_str == NULL)) { +- zval_dtor(z); ++ zval_ptr_dtor_nogc(z); + ZVAL_UNDEF(z); + return 1; + } +@@ -2806,7 +2806,7 @@ inline static int igbinary_unserialize_object_properties(struct igbinary_unseria + case igbinary_type_string64: + key_str = igbinary_unserialize_chararray(igsd, key_type, 1); + if (UNEXPECTED(key_str == NULL)) { +- zval_dtor(z); ++ zval_ptr_dtor_nogc(z); + ZVAL_UNDEF(z); + return 1; + } +@@ -2818,7 +2818,7 @@ inline static int igbinary_unserialize_object_properties(struct igbinary_unseria + continue; /* Skip unserializing this element, serialized with no value. In C, this applies to loop, not switch. */ + default: + zend_error(E_WARNING, "igbinary_unserialize_object_properties: unknown key type '%02x', position %zu", key_type, (size_t)IGB_BUFFER_OFFSET(igsd)); +- zval_dtor(z); ++ zval_ptr_dtor_nogc(z); + ZVAL_UNDEF(z); + return 1; + } |
