diff options
author | Stanislav Malyshev <stas@php.net> | 2015-08-04 16:46:53 -0700 |
---|---|---|
committer | Stanislav Malyshev <stas@php.net> | 2015-08-04 16:46:53 -0700 |
commit | 3e416bba90860a7037cfa66d6725dc33a3436bea (patch) | |
tree | 3998688ecf4da0b94d320686466f64c2e82a7d88 | |
parent | 21602ec21986375ed90242ad43015d99ae3251ab (diff) | |
download | php-git-3e416bba90860a7037cfa66d6725dc33a3436bea.tar.gz |
fix merge
-rw-r--r-- | Zend/zend_exceptions.c | 11 | ||||
-rw-r--r-- | ext/spl/spl_array.c | 7 |
2 files changed, 7 insertions, 11 deletions
diff --git a/Zend/zend_exceptions.c b/Zend/zend_exceptions.c index f03bc40e47..250db365cd 100644 --- a/Zend/zend_exceptions.c +++ b/Zend/zend_exceptions.c @@ -282,12 +282,11 @@ ZEND_METHOD(exception, __construct) /* {{{ proto Exception::__wakeup() Exception unserialize checks */ #define CHECK_EXC_TYPE(name, type) \ - zend_read_property(i_get_exception_base(object), (object), name, sizeof(name) - 1, 1, &value); \ - if(value && Z_TYPE_P(value) != type) { \ - zval *tmp; \ - MAKE_STD_ZVAL(tmp); \ - ZVAL_STRINGL(tmp, name, sizeof(name)-1, 1); \ - Z_OBJ_HANDLER_P(object, unset_property)(object, tmp, 0 TSRMLS_CC); \ + if(zend_read_property(i_get_exception_base(object), (object), name, sizeof(name) - 1, 1, &value) != &EG(uninitialized_zval) \ + && Z_TYPE(value) != type) { \ + zval tmp; \ + ZVAL_STRINGL(&tmp, name, sizeof(name) - 1); \ + Z_OBJ_HANDLER_P(object, unset_property)(object, &tmp, NULL); \ zval_ptr_dtor(&tmp); \ } diff --git a/ext/spl/spl_array.c b/ext/spl/spl_array.c index 1ec6ea17b2..0c273a26b4 100644 --- a/ext/spl/spl_array.c +++ b/ext/spl/spl_array.c @@ -1741,7 +1741,7 @@ SPL_METHOD(Array, unserialize) goto outexcept; } - var_push_dtor(&var_hash, &pflags); + var_push_dtor(&var_hash, &zflags); --p; /* for ';' */ flags = Z_LVAL(zflags); /* flags needs to be verified and we also need to verify whether the next @@ -1783,7 +1783,7 @@ SPL_METHOD(Array, unserialize) goto outexcept; } - var_push_dtor(&var_hash, &pmembers); + var_push_dtor(&var_hash, &members); /* copy members */ object_properties_load(&intern->std, Z_ARRVAL(members)); zval_ptr_dtor(&members); @@ -1791,9 +1791,6 @@ SPL_METHOD(Array, unserialize) /* done reading $serialized */ PHP_VAR_UNSERIALIZE_DESTROY(var_hash); - if (pflags) { - zval_ptr_dtor(&pflags); - } return; outexcept: |