bug51822.phpt 592 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. --TEST--
  2. Bug #51822 (Segfault with strange __destruct() for static class variables)
  3. --FILE--
  4. <?php
  5. class DestructableObject
  6. {
  7. public function __destruct()
  8. {
  9. echo "2\n";
  10. }
  11. }
  12. class DestructorCreator
  13. {
  14. public function __destruct()
  15. {
  16. $this->test = new DestructableObject;
  17. echo "1\n";
  18. }
  19. }
  20. class Test
  21. {
  22. public static $mystatic;
  23. }
  24. // Uncomment this to avoid segfault
  25. //Test::$mystatic = new DestructorCreator();
  26. $x = new Test();
  27. if (!isset(Test::$mystatic))
  28. Test::$mystatic = new DestructorCreator();
  29. echo "bla\n";
  30. ?>
  31. --EXPECT--
  32. bla
  33. 1
  34. 2