ID: 30053 Updated by: [EMAIL PROTECTED] Reported By: hkmaly at bigfoot dot com -Status: Open +Status: Wont fix -Bug Type: Unknown/Other Function +Bug Type: Scripting Engine problem Operating System: Linux PHP Version: 4.3.8 New Comment:
Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php circular references, blaa blaa, search the bug db for couple of hundred other similar bug reports. (Won't fix) Previous Comments: ------------------------------------------------------------------------ [2004-09-10 18:20:29] hkmaly at bigfoot dot com Description: ------------ If I play with references, I found php doesn't properly free all memory in arrays with references ... for example don't free all memory in local variables of function. By repeating calling that function, leak can lead to consumation of all allowed memory. BTW, submited also as http://bugs.gentoo.org/show_bug.cgi?id=63559 Reproduce code: --------------- <?php function testLeak() { $a=array("jablka","hrusky","petr"=>"zeli"); foreach($a as $k=>$v) { $b[$k]=&$a; $b[$k]['names']=&$a; } return($b); } echo memory_get_usage()."\n"; for($i=0;$i<200000;$i++) { testLeak(); echo memory_get_usage()."\n"; } ?> Expected result: ---------------- Something as 20720 21816 22144 22144 22144 .... 22144 22144 22144 Actual result: -------------- 20720 21816 22144 ..... ..... ..... 16775400 16775728 16776056 16776384 Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 32 bytes) in /castle/hkmaly/programy/php/test_leak.php on line 6 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=30053&edit=1