From 3e89e92f57033cfd21ee5505b872bf17d77d2b6d Mon Sep 17 00:00:00 2001 From: Xinchen Hui Date: Wed, 19 Feb 2014 19:33:10 +0800 Subject: [PATCH] Fixed possible NULL pointer dereference --- Zend/zend_object_handlers.c | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/Zend/zend_object_handlers.c b/Zend/zend_object_handlers.c index 7cb16e18bd..a3a024ba1b 100644 --- a/Zend/zend_object_handlers.c +++ b/Zend/zend_object_handlers.c @@ -1408,21 +1408,22 @@ static int zend_std_has_property(zval *object, zval *member, int has_set_exists, goto found; } if (UNEXPECTED(zobj->properties != NULL)) { - value = zend_hash_find(zobj->properties, property_info->name); + if ((value = zend_hash_find(zobj->properties, property_info->name)) != NULL) { found: - switch (has_set_exists) { - case 0: - result = (Z_TYPE_P(value) != IS_NULL); - break; - default: - result = zend_is_true(value TSRMLS_CC); - break; - case 2: - result = 1; - break; + switch (has_set_exists) { + case 0: + result = (Z_TYPE_P(value) != IS_NULL); + break; + default: + result = zend_is_true(value TSRMLS_CC); + break; + case 2: + result = 1; + break; + } } + goto exit; } - goto exit; } result = 0; -- 2.40.0