From: robo47 at robo47 dot net Operating system: Linux and Windows PHP version: 5.0.4 PHP Bug Type: Reproducible crash Bug description: Apache crash on declaring a private methode __destruct with debug_backtrace
Description: ------------ The following Code was testet on a Suse 9.0 Server (PHP 5.0.4) and on a local Windows-machine(PHP 5.0.2) and it crashs the Apache Webserver: The Error Occurs when i want to use my error-handler (the posted version is a minimized version with only relevant parts) and i set the __destruct-function as an private, not as a public methode. Using the standard-errorhandler the following Error is shown: Warning: Call to private testclass::__destruct() from context '' during shutdown ignored in Unknown on line 0 Reproduce code: --------------- <?php error_reporting (E_ALL); class ErrorHandlerClass { public function __construct() { set_error_handler(array(&$this,'ErrorHandler')); } public function ErrorHandler($errno, $errstr, $errfile, $errline) { echo debug_backtrace(); // the problem which crashs the script } } $error = new ErrorHandlerClass(); class testclass { public function __construct() { echo 'test1'; } private function __destruct() {// here is the Error, because the __destruct should be public !! echo 'test2'; } } $test = new testclass(); ?> Expected result: ---------------- The Output of debug_backtrace(); should appear Actual result: -------------- On Windows-machine the Apache crashs and restarts with this Entry in the apache-errorlog: [Thu Jun 02 11:23:11 2005] [notice] Parent: child process exited with status 1073807364 -- Restarting. the linux-machine shows the following in the apache-errorlog: [Wed Jun 01 17:49:21 2005] [notice] child pid 26331 exit signal Segmentation fault (11) -- Edit bug report at http://bugs.php.net/?id=33218&edit=1 -- Try a CVS snapshot (php4): http://bugs.php.net/fix.php?id=33218&r=trysnapshot4 Try a CVS snapshot (php5.0): http://bugs.php.net/fix.php?id=33218&r=trysnapshot50 Try a CVS snapshot (php5.1): http://bugs.php.net/fix.php?id=33218&r=trysnapshot51 Fixed in CVS: http://bugs.php.net/fix.php?id=33218&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=33218&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=33218&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=33218&r=needscript Try newer version: http://bugs.php.net/fix.php?id=33218&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=33218&r=support Expected behavior: http://bugs.php.net/fix.php?id=33218&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=33218&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=33218&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=33218&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=33218&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=33218&r=dst IIS Stability: http://bugs.php.net/fix.php?id=33218&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=33218&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=33218&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=33218&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=33218&r=mysqlcfg