diff options
author | Tjerk Meesters <datibbaw@php.net> | 2014-05-13 09:42:12 +0800 |
---|---|---|
committer | Tjerk Meesters <datibbaw@php.net> | 2014-05-13 11:58:28 +0800 |
commit | e7b50a8ee9ca7c07fe9ed6fd457a3df1ca71d319 (patch) | |
tree | ddab944cb0811ae371e643873fb838d98ce4b5b6 | |
parent | 9f9ee0186eb3d1fcc2b3a4ecc55a0195233fd670 (diff) | |
download | php-git-e7b50a8ee9ca7c07fe9ed6fd457a3df1ca71d319.tar.gz |
Convert to unpacked before deleting elements
Return FAILURE immediately if a string index removal is attempted.
Moved condition higher up
-rw-r--r-- | Zend/zend_hash.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Zend/zend_hash.c b/Zend/zend_hash.c index 3ffdf6ef76..41805a2f92 100644 --- a/Zend/zend_hash.c +++ b/Zend/zend_hash.c @@ -675,6 +675,10 @@ ZEND_API int zend_hash_str_del(HashTable *ht, const char *str, int len) IS_CONSISTENT(ht); + if (ht->u.flags & HASH_FLAG_PACKED) { + return FAILURE; + } + h = zend_inline_hash_func(str, len); nIndex = h & ht->nTableMask; |