diff options
author | Zeev Suraski <zeev@php.net> | 1999-05-25 22:55:13 +0000 |
---|---|---|
committer | Zeev Suraski <zeev@php.net> | 1999-05-25 22:55:13 +0000 |
commit | 033858e13d77186b2a4ce1b1833955e43d9d4b74 (patch) | |
tree | d1b1be191b4093a5ef9012263530636baa7cd2be | |
parent | cf58b7ef1615d2456fc2e3aa9319d8aae11f880f (diff) | |
download | php-git-033858e13d77186b2a4ce1b1833955e43d9d4b74.tar.gz |
Avoid crashing if an error occurs before we open the first file.
-rw-r--r-- | Zend/zend_execute_API.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index 9e8b51ec10..6f20f976b0 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -111,6 +111,8 @@ void init_executor(CLS_D ELS_DC) globals->is_ref = 0; zend_hash_update(&EG(symbol_table), "GLOBALS", sizeof("GLOBALS"), &globals, sizeof(zval *), NULL); } + + EG(opline_ptr) = NULL; } @@ -164,13 +166,21 @@ ZEND_API char *get_active_function_name(ELS_D) ZEND_API char *zend_get_executed_filename(ELS_D) { - return active_opline->filename; + if (EG(opline_ptr)) { + return active_opline->filename; + } else { + return "[no active file]"; + } } ZEND_API uint zend_get_executed_lineno(ELS_D) { - return active_opline->lineno; + if (EG(opline_ptr)) { + return active_opline->lineno; + } else { + return 0; + } } |