com php-src: Fixed dtrace support: Zend/zend_dtrace.c Zen d/zend_exceptions.c

From: Date: Tue, 22 Jul 2014 07:12:49 +0000
Subject: com php-src: Fixed dtrace support: Zend/zend_dtrace.c Zen d/zend_exceptions.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-79548@lists.php.net to get a copy of this message
Commit: ea17b018d834038f2e65b1716c0cbc02a27a7838 Author: Dmitry Stogov <dmitry@zend.com> Tue, 22 Jul 2014 11:12:49 +0400 Parents: 6cc487df2c464224e28c3869599e0c110df03897 Branches: phpng Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=ea17b018d834038f2e65b1716c0cbc02a27a7838 Log: Fixed dtrace support Changed paths: M Zend/zend_dtrace.c M Zend/zend_exceptions.c Diff: diff --git a/Zend/zend_dtrace.c b/Zend/zend_dtrace.c index 2c1dead..285f6c0 100644 --- a/Zend/zend_dtrace.c +++ b/Zend/zend_dtrace.c @@ -26,8 +26,13 @@ /* PHP DTrace probes {{{ */ static inline const char *dtrace_get_executed_filename(TSRMLS_D) { - if (EG(current_execute_data) && EG(current_execute_data)->op_array) { - return EG(current_execute_data)->op_array->filename; + zend_execute_data *ex = EG(current_execute_data); + + while (ex && (!ex->func || !ZEND_USER_CODE(ex->func->type))) { + ex = ex->prev_execute_data; + } + if (ex) { + return ex->func->op_array.filename->val; } else { return zend_get_executed_filename(TSRMLS_C); } diff --git a/Zend/zend_exceptions.c b/Zend/zend_exceptions.c index 90487bf..754927b 100644 --- a/Zend/zend_exceptions.c +++ b/Zend/zend_exceptions.c @@ -88,12 +88,11 @@ void zend_throw_exception_internal(zval *exception TSRMLS_DC) /* {{{ */ { #ifdef HAVE_DTRACE if (DTRACE_EXCEPTION_THROWN_ENABLED()) { - const char *classname; - zend_uint name_len; + zend_string *classname; if (exception != NULL) { - zend_get_object_classname(Z_OBJ_P(exception), &classname, &name_len TSRMLS_CC); - DTRACE_EXCEPTION_THROWN((char *)classname); + classname = zend_get_object_classname(Z_OBJ_P(exception) TSRMLS_CC); + DTRACE_EXCEPTION_THROWN(classname->val); } else { DTRACE_EXCEPTION_THROWN(NULL); }

« previous php.cvs (#79548) next »