getDefaultValue() memory leaks with constant
| Bug #62202 | ReflectionParameter::getDefaultValue() memory leaks with constant | ||||
|---|---|---|---|---|---|
| Submitted: | 2012-06-01 06:13 UTC | Modified: | 2012-06-01 07:18 UTC | ||
| From: | reeze dot xia at gmail dot com | Assigned: | laruence (profile) | ||
| Status: | Closed | Package: | Reflection related | ||
| PHP Version: | Irrelevant | OS: | |||
| Private report: | No | CVE-ID: | None | ||
[2012-06-01 06:13 UTC] reeze dot xia at gmail dot com
Description:
------------
ReflectionParameter::getDefaultValue() memory leaks with constant.
Test script:
---------------
<?php
define('TEST_CONST', '10');
class Foo {
public function bar($param = TEST_CONST) {
return $param;
}
}
$refl_method = new ReflectionMethod('Foo::bar');
foreach ($refl_method->getParameters() as $param) {
if ($param->isDefaultValueAvailable()) {
var_dump($param->getDefaultValue());
}
}
?>
Expected result:
----------------
string(2) "10"
Actual result:
--------------
string(2) "10"
[Fri Jun 1 14:09:29 2012] Script: '/Users/reeze/Opensource/php-src-
5.3/leak.php'
/Users/reeze/Opensource/php-src-5.3/ext/reflection/php_reflection.c(2424) :
Freeing 0x10C8A69E8 (11 bytes), script=/Users/reeze/Opensource/php-src-
5.3/leak.php
/Users/reeze/Opensource/php-src-5.3/Zend/zend_variables.c(120) : Actual location
(location was relayed)
=== Total 1 memory leaks detected ===
Patches
Pull Requests
History
AllCommentsChangesGit/SVN commits
[2012-06-01 07:18 UTC] laruence@php.net
-Status: Open +Status: Closed -Assigned To: +Assigned To: laruence