From d085a7439f577eb0690a4e896f39f65dc87cdfe3 Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Mon, 21 Sep 2020 14:58:23 +0200 Subject: [PATCH] Assert on unknown list entry type --- Zend/zend_list.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/Zend/zend_list.c b/Zend/zend_list.c index 45ff950b6bf..bacdd739e6f 100644 --- a/Zend/zend_list.c +++ b/Zend/zend_list.c @@ -66,12 +66,10 @@ static void zend_resource_dtor(zend_resource *res) res->ptr = NULL; ld = zend_hash_index_find_ptr(&list_destructors, r.type); - if (ld) { - if (ld->list_dtor_ex) { - ld->list_dtor_ex(&r); - } - } else { - zend_error(E_WARNING, "Unknown list entry type (%d)", r.type); + ZEND_ASSERT(ld && "Unknown list entry type"); + + if (ld->list_dtor_ex) { + ld->list_dtor_ex(&r); } } @@ -191,12 +189,10 @@ void plist_entry_destructor(zval *zv) zend_rsrc_list_dtors_entry *ld; ld = zend_hash_index_find_ptr(&list_destructors, res->type); - if (ld) { - if (ld->plist_dtor_ex) { - ld->plist_dtor_ex(res); - } - } else { - zend_error(E_WARNING,"Unknown list entry type (%d)", res->type); + ZEND_ASSERT(ld && "Unknown list entry type"); + + if (ld->plist_dtor_ex) { + ld->plist_dtor_ex(res); } } free(res);