1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- --TEST--
- Bug #47343 (gc_collect_cycles causes a segfault when called within a destructor in one case)
- --FILE--
- <?php
- class A
- {
- public function __destruct()
- {
- gc_collect_cycles();
- }
- public function getB()
- {
- $this->data['foo'] = new B($this);
- $this->data['bar'] = new B($this);
- // Return either of the above
- return $this->data['foo'];
- }
- }
- class B
- {
- public function __construct($A)
- {
- $this->A = $A;
- }
- public function __destruct()
- {
- }
- }
- for ($i = 0; $i < 2; $i++)
- {
- $Aobj = new A;
- $Bobj = $Aobj->getB();
- unset($Bobj);
- unset($Aobj);
- }
- echo "DONE\n";
- ?>
- --EXPECT--
- DONE
|