ID: 11617 User Update by: [EMAIL PROTECTED] Old-Status: Feedback Status: Open Bug Type: *Session related Operating system: Linux 2.2.16 (Cobalt Raq4) PHP Version: 4.0 Latest CVS (2001-06-22) Description: crash when restoring references Tried, but php still changed. Maybe it is something with CVS (forgot to commit?), I've checked session.c revision and result was: revision 1.213 date: 2001/06/21 18:46:25; author: thies; state: Exp; lines: +31 -26 I've submitted this bug later. Zork Previous Comments: --------------------------------------------------------------------------- [2001-06-23 17:34:50] [EMAIL PROTECTED] Could you please try again? The fix wasn't ok, but now it's been rewritten and should work. If it still crashes, try to generate a gdb backtrace of the crash. And thank you for helping! --Jani --------------------------------------------------------------------------- [2001-06-22 11:01:25] [EMAIL PROTECTED] There is still problem in serialize/unserialize mechanism used to restore session variables(after closing #8676 bug which was supoused to correct the problem). Here is simplest script I can produce that does apache segfault on my machine: <? class Cscreen { var $page; var $frames; function Cscreen() { $this -> frames = array(); } }; class CError_handler { var $msg_error; function CError_handler() { $this -> msg_error = new CMessage(); } }; class CConnection_Table { var $data; function CConnection_table() { $this -> data = array(); } function mconnect($message,&$object,$method) { $data[0] = &$object; $data[1] = $method; $this -> data[$message -> msg_id][] = $data; } }; class CMessage { var $data; var $msg_id; function CMessage($data = 0) { global $__CMSGID_NEXT; $this -> msg_id = $__CMSGID_NEXT++; $this -> data = $data; } }; function MCONNECT(&$message,&$obj_name,$method_name) { global $__connection_table; $__connection_table -> mconnect($message,$obj_name,$method_name); }; session_start(); session_destroy(); $__connection_table = new CConnection_table; session_register("__connection_table"); $screen = new Cscreen(); session_register("screen"); $error_handler = new CError_handler($screen); MCONNECT($error_handler -> msg_error,$screen,"fatal_error"); session_register("error_handler"); echo "done"; exit(); --------------------------------------------------------------------------- Full Bug description available at: http://bugs.php.net/?id=11617 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]