diff options
author | Nikita Popov <nikita.ppv@gmail.com> | 2020-05-06 11:27:20 +0200 |
---|---|---|
committer | Nikita Popov <nikita.ppv@gmail.com> | 2020-05-06 11:27:20 +0200 |
commit | 718e55c3e045a3b786749e0fbedda7f0ab444907 (patch) | |
tree | de1e1b340d54838c6fc31caf020bd045efb16e64 /Zend/zend_hash.h | |
parent | e41f764b5c65c35df93de353250f3a7b6ae268b0 (diff) | |
download | php-git-718e55c3e045a3b786749e0fbedda7f0ab444907.tar.gz |
Add zend_array_release() function
To complement zend_string_release() and zend_object_release().
Diffstat (limited to 'Zend/zend_hash.h')
-rw-r--r-- | Zend/zend_hash.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/Zend/zend_hash.h b/Zend/zend_hash.h index 632658d938..d2b6ab2c71 100644 --- a/Zend/zend_hash.h +++ b/Zend/zend_hash.h @@ -324,6 +324,14 @@ static zend_always_inline void zend_hash_iterators_update(HashTable *ht, HashPos } } +static zend_always_inline void zend_array_release(zend_array *array) +{ + if (!(GC_FLAGS(array) & IS_ARRAY_IMMUTABLE)) { + if (GC_DELREF(array) == 0) { + zend_array_destroy(array); + } + } +} END_EXTERN_C() |