Edit report at https://bugs.php.net/bug.php?id=64404&edit=1
ID: 64404
Comment by: zeusgerde at arcor dot de
Reported by: zeusgerde at arcor dot de
Summary: assert(true) increases memory_get_usage()
Status: Not a bug
Type: Bug
Package: *General Issues
Operating System: Windows 7
PHP Version: 5.4.12
Block user comment: N
Private report: N
New Comment:
I guess the same goes for this? The string 'true' is a new variable, that is
not
freed?
<?php
echo "assert(true)\r\n";
echo memory_get_usage(), "\r\n"; // 124448
assert(true);
echo memory_get_usage(), "\r\n"; // 124448
echo "assert('true')\r\n";
echo memory_get_usage(), "\r\n"; // 124448
assert('true');
echo memory_get_usage(), "\r\n"; // 124640 > 124448
Previous Comments:
------------------------------------------------------------------------
[2013-03-11 14:48:06] [email protected]
The memory usage is increased not due to the assert(true) call, but because of
the variables used to store the memory usage. If you do something like this the
memory usage will not change:
var_dump(memory_get_usage());
assert(true);
var_dump(memory_get_usage());
------------------------------------------------------------------------
[2013-03-11 12:19:26] zeusgerde at arcor dot de
Description:
------------
assert(true) increases memory_get_usage()
Test script:
---------------
<?php
error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 1);
echo phpversion(), "\r\n";
$oldMemUsage = memory_get_usage();
assert(true);
$newMemUsage = memory_get_usage();
assert('$oldMemUsage == $newMemUsage');
echo 'OK';
Expected result:
----------------
5.4.12
OK
Actual result:
--------------
5.4.12
Warning: assert(): Assertion "$oldMemUsage == $newMemUsage" failed in
D:\bar.php
on line 10
OK
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=64404&edit=1