From: foobar Date: Sat, 26 Mar 2005 02:43:02 +0000 (+0000) Subject: - Fixed bug #28839 (SIGSEGV in interactive mode (php -a)) X-Git-Tag: php-5.0.1b1~679 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fcba5e099c43cd2215006c511094b8ecaeba000a;p=php - Fixed bug #28839 (SIGSEGV in interactive mode (php -a)) (kameshj at fastmail dot fm) --- diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index 40ccb5e0fc..e49086acc7 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -1094,6 +1094,17 @@ void execute_new_code(TSRMLS_D) opline->op2.u.constant.is_ref = 1; opline->op2.u.constant.refcount = 2; } + switch (opline->opcode) { + case ZEND_JMP: + opline->op1.u.jmp_addr = &CG(active_op_array)->opcodes[opline->op1.u.opline_num]; + break; + case ZEND_JMPZ: + case ZEND_JMPNZ: + case ZEND_JMPZ_EX: + case ZEND_JMPNZ_EX: + opline->op2.u.jmp_addr = &CG(active_op_array)->opcodes[opline->op2.u.opline_num]; + break; + } ZEND_VM_SET_OPCODE_HANDLER(opline); opline++; }