> Looks like a circular reference to me. It's supposed to leak :) > Yep - but shouldn't object destruction be forced before the memory manager cleans it up. The example could rather be put as:
<?php class InstanceContainer { public $value; function __construct() { $this->value = new GenericObject($this); } function __destruct() { print "Called\n"; } } class GenericObject { public $internal; function __construct($instance) { $this->internal = $instance; } } $o = new InstanceContainer(); ?> As you can predict, __destruct() won't be called. Shouldn't objects be unmercifully cleaned up before we rely on the memory manager to burn the leftovers? -Sterling > Andi > > At 06:42 PM 1/13/2004 -0500, Sterling Hughes wrote: > >Hey, > > > >The attached script gives 10 leaks when PHP5 is compiled with > >--enable-debug. These problems are also related to Bug #26765, I'll be > >taking a look at it, unless someone knows the cause already. > > > >The leaks caused when running it are: > > > >/home/sterling/work/php/php-src/Zend/zend_execute.c(2840) : Freeing > >0x40162A30 (16 bytes), script=t.php > >/home/sterling/work/php/php-src/Zend/zend_hash.c(236) : Freeing > >0x401629CC (44 bytes), script=t.php > >Last leak repeated 1 time > >/home/sterling/work/php/php-src/Zend/zend_execute.c(3094) : Freeing > >0x40162968 (44 bytes), script=t.php > >/home/sterling/work/php/php-src/Zend/zend_API.c(720) : Actual location > >(location was relayed) > >Last leak repeated 1 time > >/home/sterling/work/php/php-src/Zend/zend_objects.c(88) : Freeing > >0x40162924 (12 bytes), script=t.php > >Last leak repeated 1 time > >/home/sterling/work/php/php-src/Zend/zend_execute.c(3093) : Freeing > >0x401628E0 (16 bytes), script=t.php > >/home/sterling/work/php/php-src/Zend/zend_API.c(721) : Freeing > >0x4016272C (32 bytes), script=t.php > >/home/sterling/work/php/php-src/Zend/zend_hash.c(157) : Actual location > >(location was relayed) > >Last leak repeated 1 time > >=== Total 10 memory leaks detected === > > > >-Sterling > > > >-- > >PHP Internals - PHP Runtime Development Mailing List > >To unsubscribe, visit: http://www.php.net/unsub.php > -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php