diff options
Diffstat (limited to 'Zend')
-rw-r--r-- | Zend/zend_exceptions.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Zend/zend_exceptions.c b/Zend/zend_exceptions.c index 3d73e92c50..f163495906 100644 --- a/Zend/zend_exceptions.c +++ b/Zend/zend_exceptions.c @@ -591,6 +591,9 @@ ZEND_METHOD(exception, getTraceAsString) str = &res; trace = zend_read_property(default_exception_ce, getThis(), "trace", sizeof("trace")-1, 1 TSRMLS_CC); + if(Z_TYPE_P(trace) != IS_ARRAY) { + RETURN_FALSE; + } zend_hash_apply_with_arguments(Z_ARRVAL_P(trace) TSRMLS_CC, (apply_func_args_t)_build_trace_string, 3, str, len, &num); s_tmp = emalloc(1 + MAX_LENGTH_OF_LONG + 7 + 1); |