From db012a8ba71ab11a35fab5ac22d4b11de435e06c Mon Sep 17 00:00:00 2001 From: Jorg Adam Sowa Date: Tue, 4 Oct 2022 14:37:06 +0200 Subject: [PATCH] Use function HT_IS_PACKED where it's missing (#9658) --- Zend/zend_hash.c | 6 +++--- Zend/zend_hash.h | 6 +++--- ext/standard/var_unserializer.re | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Zend/zend_hash.c b/Zend/zend_hash.c index aa770141cd2..793d7d4a7ce 100644 --- a/Zend/zend_hash.c +++ b/Zend/zend_hash.c @@ -2882,9 +2882,9 @@ ZEND_API void ZEND_FASTCALL zend_hash_sort_ex(HashTable *ht, sort_func_t sort, b ht->nNumUsed = i; } - if (!(HT_FLAGS(ht) & HASH_FLAG_PACKED)) { - /* We broke the hash colisions chains overriding Z_NEXT() by Z_EXTRA(). - * Reset the hash headers table as well to avoid possilbe inconsistent + if (!HT_IS_PACKED(ht)) { + /* We broke the hash collisions chains overriding Z_NEXT() by Z_EXTRA(). + * Reset the hash headers table as well to avoid possible inconsistent * access on recursive data structures. * * See Zend/tests/bug63882_2.phpt diff --git a/Zend/zend_hash.h b/Zend/zend_hash.h index 5306fe34c79..93b9f0d4530 100644 --- a/Zend/zend_hash.h +++ b/Zend/zend_hash.h @@ -192,7 +192,7 @@ static zend_always_inline zval *zend_hash_find_ex(const HashTable *ht, zend_stri } #define ZEND_HASH_INDEX_FIND(_ht, _h, _ret, _not_found) do { \ - if (EXPECTED(HT_FLAGS(_ht) & HASH_FLAG_PACKED)) { \ + if (EXPECTED(HT_IS_PACKED(_ht))) { \ if (EXPECTED((zend_ulong)(_h) < (zend_ulong)(_ht)->nNumUsed)) { \ _ret = &_ht->arPacked[_h]; \ if (UNEXPECTED(Z_TYPE_P(_ret) == IS_UNDEF)) { \ @@ -215,7 +215,7 @@ ZEND_API zval* ZEND_FASTCALL zend_hash_lookup(HashTable *ht, zend_string *key); ZEND_API zval* ZEND_FASTCALL zend_hash_index_lookup(HashTable *ht, zend_ulong h); #define ZEND_HASH_INDEX_LOOKUP(_ht, _h, _ret) do { \ - if (EXPECTED(HT_FLAGS(_ht) & HASH_FLAG_PACKED)) { \ + if (EXPECTED(HT_IS_PACKED(_ht))) { \ if (EXPECTED((zend_ulong)(_h) < (zend_ulong)(_ht)->nNumUsed)) { \ _ret = &_ht->arPacked[_h]; \ if (EXPECTED(Z_TYPE_P(_ret) != IS_UNDEF)) { \ @@ -1513,7 +1513,7 @@ static zend_always_inline void *zend_hash_get_current_data_ptr_ex(HashTable *ht, HashTable *__fill_ht = (ht); \ zval *__fill_val = __fill_ht->arPacked + __fill_ht->nNumUsed; \ uint32_t __fill_idx = __fill_ht->nNumUsed; \ - ZEND_ASSERT(HT_FLAGS(__fill_ht) & HASH_FLAG_PACKED); + ZEND_ASSERT(HT_IS_PACKED(__fill_ht)); #define ZEND_HASH_FILL_GROW() do { \ if (UNEXPECTED(__fill_idx >= __fill_ht->nTableSize)) { \ diff --git a/ext/standard/var_unserializer.re b/ext/standard/var_unserializer.re index bcf19002fc0..7066393a25a 100644 --- a/ext/standard/var_unserializer.re +++ b/ext/standard/var_unserializer.re @@ -813,7 +813,7 @@ static inline int object_common(UNSERIALIZE_PARAMETER, zend_long elements, bool return 0; } - zend_hash_extend(ht, zend_hash_num_elements(ht) + elements, HT_FLAGS(ht) & HASH_FLAG_PACKED); + zend_hash_extend(ht, zend_hash_num_elements(ht) + elements, HT_IS_PACKED(ht)); if (!process_nested_object_data(UNSERIALIZE_PASSTHRU, ht, elements, Z_OBJ_P(rval))) { if (has_wakeup) { ZVAL_DEREF(rval);