diff options
author | Dmitry Stogov <dmitry@zend.com> | 2015-03-05 18:18:39 +0300 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2015-03-05 18:18:39 +0300 |
commit | 6d065a8545291a8048ef307476c4358922ca3a61 (patch) | |
tree | 00ed4a38bcc0b69729a95bd794cc171a37f3eeff /Zend/zend_execute_API.c | |
parent | bb91bf83f9fc60cbd6cb30e6b2a7858efe1aa4c5 (diff) | |
download | php-git-6d065a8545291a8048ef307476c4358922ca3a61.tar.gz |
Avoid repeatable strlen() calls
Diffstat (limited to 'Zend/zend_execute_API.c')
-rw-r--r-- | Zend/zend_execute_API.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index f52d9f33ce..3c1bd87bac 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -461,6 +461,21 @@ ZEND_API const char *zend_get_executed_filename(void) /* {{{ */ } /* }}} */ +ZEND_API zend_string *zend_get_executed_filename_ex(void) /* {{{ */ +{ + 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; + } else { + return NULL; + } +} +/* }}} */ + ZEND_API uint zend_get_executed_lineno(void) /* {{{ */ { zend_execute_data *ex = EG(current_execute_data); |