svn: /php/php-src/trunk/Zend/ zend_compile.c

From: Date: Fri, 23 Apr 2010 02:57:49 +0000
Subject: svn: /php/php-src/trunk/Zend/ zend_compile.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-62366@lists.php.net to get a copy of this message
felipe Fri, 23 Apr 2010 02:57:49 +0000 Revision: http://svn.php.net/viewvc?view=revision&revision=298363 Log: - Fix memory issue Changed paths: U php/php-src/trunk/Zend/zend_compile.c Modified: php/php-src/trunk/Zend/zend_compile.c =================================================================== --- php/php-src/trunk/Zend/zend_compile.c 2010-04-23 02:53:01 UTC (rev 298362) +++ php/php-src/trunk/Zend/zend_compile.c 2010-04-23 02:57:49 UTC (rev 298363) @@ -3344,18 +3344,14 @@ opcode_copy = safe_emalloc(sizeof(zend_op), fe->op_array.last, 0); for(i = 0; i < fe->op_array.last; i++) { opcode_copy[i] = fe->op_array.opcodes[i]; - if (opcode_copy[i].op1_type == IS_CONST) { - zval_copy_ctor(&CONSTANT_EX(&fe->op_array, opcode_copy[i].op1.constant)); - } else { + if (opcode_copy[i].op1_type != IS_CONST) { if (opcode_copy[i].op1.jmp_addr >= fe->op_array.opcodes && opcode_copy[i].op1.jmp_addr < fe->op_array.opcodes + fe->op_array.last) { opcode_copy[i].op1.jmp_addr = opcode_copy + (fe->op_array.opcodes[i].op1.jmp_addr - fe->op_array.opcodes); } } - if (opcode_copy[i].op2_type == IS_CONST) { - zval_copy_ctor(&CONSTANT_EX(&fe->op_array, opcode_copy[i].op2.constant)); - } else { + if (opcode_copy[i].op2_type != IS_CONST) { if (opcode_copy[i].op2.jmp_addr >= fe->op_array.opcodes && opcode_copy[i].op2.jmp_addr < fe->op_array.opcodes + fe->op_array.last) { opcode_copy[i].op2.jmp_addr = opcode_copy + (fe->op_array.opcodes[i].op2.jmp_addr - fe->op_array.opcodes); @@ -3394,6 +3390,7 @@ for (i = 0; i < fe->op_array.size_literal; i++) { literals_copy[i] = fe->op_array.literals[i]; + zval_copy_ctor(&literals_copy[i].constant); } fe->op_array.literals = literals_copy; }

« previous php.cvs (#62366) next »