com php-src: Fixed memory leak: Zend/zend_execute.h ext/s tandard/tests/serialize/unserialize_mem_leak.phpt
| From: | Dmitry Stogov | Date: | Mon, 13 Apr 2015 21:57:45 +0000 |
| Subject: | com php-src: Fixed memory leak: Zend/zend_execute.h ext/s tandard/tests/serialize/unserialize_mem_leak.phpt | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-86172@lists.php.net to get a copy of this message | ||
Commit: cddb5eb3e9ff3af9fdff8b849bae67e4d3c7bd03
Author: Dmitry Stogov <dmitry@zend.com> Tue, 14 Apr 2015 00:57:45 +0300
Parents: 9806a62545e1dab3ce15ac78e85ab5aa0187cdd4
Branches: master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=cddb5eb3e9ff3af9fdff8b849bae67e4d3c7bd03
Log:
Fixed memory leak
Changed paths:
M Zend/zend_execute.h
M ext/standard/tests/serialize/unserialize_mem_leak.phpt
Diff:
diff --git a/Zend/zend_execute.h b/Zend/zend_execute.h
index 408a7c5..a3844b2 100644
--- a/Zend/zend_execute.h
+++ b/Zend/zend_execute.h
@@ -200,7 +200,7 @@ static zend_always_inline void zend_vm_stack_free_extra_args(zend_execute_data *
zval *p = end + (ZEND_CALL_NUM_ARGS(call) - call->func->op_array.num_args);
do {
p--;
- zval_ptr_dtor_nogc(p);
+ i_zval_ptr_dtor(p ZEND_FILE_LINE_CC);
} while (p != end);
}
}
diff --git a/ext/standard/tests/serialize/unserialize_mem_leak.phpt
b/ext/standard/tests/serialize/unserialize_mem_leak.phpt
index d27ca2b..97c59f9 100644
--- a/ext/standard/tests/serialize/unserialize_mem_leak.phpt
+++ b/ext/standard/tests/serialize/unserialize_mem_leak.phpt
@@ -1,7 +1,5 @@
--TEST--
Memleaks if unserialize return a self-referenced array/object
---XFAIL--
-To fix this, we need change zval_ptr_dtor_nogc to zval_ptr_dtor in free_args, but it will introduce
slowdown. mark this XFAIL now. we may find better fix later.
--INI--
report_memleaks=1
--FILE--