From: Andi Gutmans Date: Thu, 4 Jan 2001 06:20:26 +0000 (+0000) Subject: - Make plist_destructor work like list_destructor to allow it to call X-Git-Tag: php-4.0.5RC1~741 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e976d8ed1dac38fbf2812fa0a1c52d50009650fe;p=php - Make plist_destructor work like list_destructor to allow it to call extended destructors. --- diff --git a/Zend/zend_list.c b/Zend/zend_list.c index 7fb20c85cb..1631e72750 100644 --- a/Zend/zend_list.c +++ b/Zend/zend_list.c @@ -272,8 +272,18 @@ void plist_entry_destructor(void *ptr) zend_rsrc_list_dtors_entry *ld; if (zend_hash_index_find(&list_destructors, le->type,(void **) &ld)==SUCCESS) { - if (ld->plist_dtor) { - (ld->plist_dtor)(le->ptr); + switch (ld->type) { + case ZEND_RESOURCE_LIST_TYPE_STD: + if (ld->list_dtor) { + (ld->list_dtor)(le->ptr); + } + break; + case ZEND_RESOURCE_LIST_TYPE_EX: + if (ld->list_dtor_ex) { + ld->list_dtor_ex(le); + } + break; + EMPTY_SWITCH_DEFAULT_CASE() } } else { zend_error(E_WARNING,"Unknown persistent list entry type in module shutdown (%d)",le->type);