]> granicus.if.org Git - php/commitdiff
Fixed memory leak
authorDmitry Stogov <dmitry@zend.com>
Fri, 22 Feb 2013 13:10:34 +0000 (17:10 +0400)
committerDmitry Stogov <dmitry@zend.com>
Fri, 22 Feb 2013 13:10:34 +0000 (17:10 +0400)
Optimizer/block_pass.c

index f72cc582891a5f6c1e8e1a12e21a90323fd02113..a65554c4ab79ea9a8850ad550a918409355dfe45 100644 (file)
@@ -114,6 +114,10 @@ static zend_code_block *find_code_blocks(zend_op_array *op_array)
                                /* would not optimize non-optimized BRK/CONTs - we cannot
                                 really know where it jumps, so these optimizations are
                                too dangerous */
+                               if (op_array->last_try_catch) {
+                                       efree(blocks->try);
+                                       efree(blocks->catch);
+                               }
                                efree(blocks);
                                return NULL;
 #if ZEND_EXTENSION_API_NO > PHP_5_4_X_API_NO