diff options
author | Xinchen Hui <laruence@php.net> | 2012-08-25 21:49:29 +0800 |
---|---|---|
committer | Xinchen Hui <laruence@php.net> | 2012-08-25 21:50:08 +0800 |
commit | 383eafe482d0e07e6bc8a6b5c1dccb69a9f17bb7 (patch) | |
tree | f1681ec2bca52aa79c78343b9b130c28c0a7d241 | |
parent | 4c83ecc75452a23799c39f9bbb95b617fa46bf84 (diff) | |
parent | d92a89fe52e89eef9527d1e27b5bb051ae24bc54 (diff) | |
download | php-git-383eafe482d0e07e6bc8a6b5c1dccb69a9f17bb7.tar.gz |
Merge branch 'PHP-5.3' into PHP-5.4
-rw-r--r-- | NEWS | 1 | ||||
-rw-r--r-- | Zend/zend_vm_execute.skl | 2 | ||||
-rw-r--r-- | Zend/zend_vm_gen.php | 7 |
3 files changed, 9 insertions, 1 deletions
@@ -3,6 +3,7 @@ PHP NEWS ?? ??? 2012, PHP 5.4.7 - Core: + . Fixed bug (segfault while build with zts and GOTO vm-kind). (Laruence) . Fixed bug #62844 (parse_url() does not recognize //). (Andrew Faulds). . Fixed bug #62829 (stdint.h included on platform where HAVE_STDINT_H is not set). (Felipe) diff --git a/Zend/zend_vm_execute.skl b/Zend/zend_vm_execute.skl index 426f689795..6d1b2e70e7 100644 --- a/Zend/zend_vm_execute.skl +++ b/Zend/zend_vm_execute.skl @@ -5,8 +5,8 @@ ZEND_API void {%EXECUTOR_NAME%}(zend_op_array *op_array TSRMLS_DC) DCL_OPLINE zend_execute_data *execute_data; zend_bool nested = 0; - zend_bool original_in_execution = EG(in_execution); {%HELPER_VARS%} + {%EXECUTION_STATUS%} {%INTERNAL_LABELS%} diff --git a/Zend/zend_vm_gen.php b/Zend/zend_vm_gen.php index 3163000e47..fde1baf90b 100644 --- a/Zend/zend_vm_gen.php +++ b/Zend/zend_vm_gen.php @@ -927,6 +927,13 @@ function gen_executor($f, $skl, $spec, $kind, $executor_name, $initializer_name, skip_blanks($f, $m[1], $m[3]."\n"); } break; + case "EXECUTION_STATUS": + if ($kind != ZEND_VM_KIND_GOTO) { + out($f, $m[1] . "zend_bool original_in_execution = EG(in_execution);\n"); + } else { + out($f, $m[1] . "zend_bool original_in_execution = op_array? EG(in_execution) : 0;\n"); + } + break; case "INTERNAL_LABELS": if ($kind == ZEND_VM_KIND_GOTO) { // Emit array of labels of opcode handlers and code for |