Browse Source

Fixed memory leaks

pull/288/merge
Dmitry Stogov 13 years ago
parent
commit
e00b04a54f
  1. 4
      ext/opcache/Optimizer/block_pass.c

4
ext/opcache/Optimizer/block_pass.c

@ -1304,9 +1304,11 @@ static void zend_jmp_optimization(zend_code_block *block, zend_op_array *op_arra
/* JMP L, L: JMP L1 -> JMP L1 */
/* JMP L, L: JMPZNZ L1,L2 -> JMPZNZ L1,L2 */
*last_op = *target;
#if ZEND_EXTENSION_API_NO < PHP_5_4_X_API_NO
if (ZEND_OP1_TYPE(last_op) == IS_CONST) {
zval_copy_ctor(&ZEND_OP1_LITERAL(last_op));
}
#endif
del_source(block, block->op1_to);
if (block->op1_to->op2_to) {
block->op2_to = block->op1_to->op2_to;
@ -1332,9 +1334,11 @@ static void zend_jmp_optimization(zend_code_block *block, zend_op_array *op_arra
target->opcode == ZEND_EXIT) {
/* JMP L, L: RETURN to immediate RETURN */
*last_op = *target;
#if ZEND_EXTENSION_API_NO < PHP_5_4_X_API_NO
if (ZEND_OP1_TYPE(last_op) == IS_CONST) {
zval_copy_ctor(&ZEND_OP1_LITERAL(last_op));
}
#endif
del_source(block, block->op1_to);
block->op1_to = NULL;
#if 0

Loading…
Cancel
Save