ID: 46453 Updated by: j...@php.net Reported By: hostmaster at uuism dot net -Status: Assigned +Status: Feedback Bug Type: Session related Operating System: Fedora Core 4 PHP Version: 5.2CVS-2008-11-01 (snap) Assigned To: kalle New Comment:
Please try using this CVS snapshot: http://snaps.php.net/php5.2-latest.tar.gz For Windows: http://windows.php.net/snapshots/ Previous Comments: ------------------------------------------------------------------------ [2008-11-01 21:44:21] j...@php.net Kalle: The fix for bug #45406 you backported broke the tests and also BC. ------------------------------------------------------------------------ [2008-11-01 21:42:15] j...@php.net Apparently I had outdated checkout. Kalle, your commit broke this. You should ALWAYS run tests _before_ committing! FIX IT. ------------------------------------------------------------------------ [2008-11-01 15:59:48] hostmaster at uuism dot net Description: ------------ When I run session_decode_variation3.phpt, the session_start() command produces a different results than expected after initializing session.serialize_handler=blah. Instead of responding with "Warning: session_start(): Cannot find save handler files" and still opening a session (?), PHP responds with "Warning: session_start(): Cannot find save handler files" and does not open a session. I can't find any documentation as to the correct Warning with the session.serialize_handler is not set to php or php-binary. Thanks. Jim Reproduce code: --------------- --INI-- session.serialize_handler=blah --FILE-- <?php ob_start(); /* * Prototype : string session_decode(void) * Description : Decodes session data from a string * Source code : ext/session/session.c */ echo "*** Testing session_decode() : variation ***\n"; var_dump(session_start()); var_dump($_SESSION); $_SESSION["foo"] = 1234567890; $_SESSION["bar"] = "Blah!"; $_SESSION["guff"] = 123.456; var_dump($_SESSION); $encoded = "A2Zvb2k6MTIzNDU2Nzg5MDs="; var_dump(session_decode(base64_decode($encoded))); var_dump($_SESSION); var_dump(session_destroy()); echo "Done"; ob_end_flush(); ?> Expected result: ---------------- *** Testing session_decode() : variation *** Warning: session_start(): Unknown session.serialize_handler. Failed to decode session object. in %s on line %d bool(true) array(0) { } array(3) { ["foo"]=> int(1234567890) ["bar"]=> string(5) "Blah!" ["guff"]=> float(123.456) } Warning: session_decode(): Unknown session.serialize_handler. Failed to decode session object. in %s on line %d bool(true) array(3) { ["foo"]=> int(1234567890) ["bar"]=> string(5) "Blah!" ["guff"]=> float(123.456) } bool(true) Done Actual result: -------------- *** Testing session_decode() : variation *** Warning: session_start(): Cannot find save handler files in /usr/local/src/php5.2-200810312330/ext/session/tests/session_decode_variation3.php on line 13 bool(true) Notice: Undefined variable: _SESSION in /usr/local/src/php5.2-200810312330/ext/session/tests/session_decode_variation3.php on line 14 NULL array(3) { ["foo"]=> int(1234567890) ["bar"]=> string(5) "Blah!" ["guff"]=> float(123.456) } Warning: session_decode(): Unknown session.serialize_handler. Failed to decode session object. in /usr/local/src/php5.2-200810312330/ext/session/tests/session_decode_variation3.php on line 20 bool(true) array(3) { ["foo"]=> int(1234567890) ["bar"]=> string(5) "Blah!" ["guff"]=> float(123.456) } Warning: session_destroy(): Trying to destroy uninitialized session in /usr/local/src/php5.2-200810312330/ext/session/tests/session_decode_variation3.php on line 22 bool(false) Done ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=46453&edit=1