summaryrefslogtreecommitdiff
path: root/Zend/zend_list.c
diff options
context:
space:
mode:
authorZeev Suraski <zeev@php.net>2000-01-16 20:59:03 +0000
committerZeev Suraski <zeev@php.net>2000-01-16 20:59:03 +0000
commitee08b81aabcbc65c9b10b535f028b3654b732e4a (patch)
treec008f5dbd7ce1d2e593ae99cdc4f9fe6d7f9f475 /Zend/zend_list.c
parent97e1ad136a92e7fc55614e60e11ffef5862eb701 (diff)
downloadphp-git-ee08b81aabcbc65c9b10b535f028b3654b732e4a.tar.gz
- Make zend_hash_apply() (and friends) reentrant and much, much quicker
- Introduce zend_hash_graceful_destroy(), which allows the destructor functions to use zend_hash_apply() and/or zend_hash_graceful_destroy() - Switch to zend_hash_graceful_destroy() in the resource list shutdowns
Diffstat (limited to 'Zend/zend_list.c')
-rw-r--r--Zend/zend_list.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/Zend/zend_list.c b/Zend/zend_list.c
index b154a51027..570ceb31b0 100644
--- a/Zend/zend_list.c
+++ b/Zend/zend_list.c
@@ -248,19 +248,15 @@ int init_resource_plist(ELS_D)
}
-void destroy_resource_list(void)
+void destroy_resource_list(ELS_D)
{
- ELS_FETCH();
-
- zend_hash_destroy(&EG(regular_list));
+ zend_hash_graceful_destroy(&EG(regular_list));
}
-void destroy_resource_plist(void)
+void destroy_resource_plist(ELS_D)
{
- ELS_FETCH();
-
- zend_hash_destroy(&EG(persistent_list));
+ zend_hash_graceful_destroy(&EG(persistent_list));
}