diff options
| author | Stanislav Malyshev <stas@php.net> | 2010-04-01 19:36:56 +0000 |
|---|---|---|
| committer | Stanislav Malyshev <stas@php.net> | 2010-04-01 19:36:56 +0000 |
| commit | cf4ea31bff28d0a3683a1dceb81047111ab32ca8 (patch) | |
| tree | d6c2689a3d93de26880defdb6d550d4a79c2a8e7 /Zend/zend_execute_API.c | |
| parent | 49b8860acebe5c93d577004a447d0bf68ec74964 (diff) | |
| download | php-git-cf4ea31bff28d0a3683a1dceb81047111ab32ca8.tar.gz | |
fix #51394 - try harder to find script lineno when exception happens
Diffstat (limited to 'Zend/zend_execute_API.c')
| -rw-r--r-- | Zend/zend_execute_API.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index 55d0ab72ca..1865b6cbf9 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -411,6 +411,10 @@ ZEND_API char *zend_get_executed_filename(TSRMLS_D) /* {{{ */ ZEND_API uint zend_get_executed_lineno(TSRMLS_D) /* {{{ */ { + if(EG(exception) && EG(opline_ptr) && active_opline->opcode == ZEND_HANDLE_EXCEPTION && + active_opline->lineno == 0 && EG(opline_before_exception)) { + return EG(opline_before_exception)->lineno; + } if (EG(opline_ptr)) { return active_opline->lineno; } else { |
