From: [EMAIL PROTECTED] Operating system: Win NT 4 PHP version: 4.3.0 PHP Bug Type: Session related Bug description: Session vars inappropriately created as references
It took me a while to track this down... we noticed that when we upgraded a develpment box from 4.2.3 to 4.3.0, that one of our session vars was being over-written by another. It turns out that one was being serialized to the session as a reference to the other, but only if the vars were intialized like this: $var1 = $var2 = "some value"; Consider two scripts, test_bug1.php and test_bug2.php If you run test_bug1, and then test_bug2, surprisingly, the output of test_bug2 will be: BEFORE: var1 = 'INITIALIZED' var2 = 'INITIALIZED' AFTER: var1 = 'CHANGED' var2 = 'CHANGED' <?php // test_bug1.php session_start(); $var1 = $var2 = "INITIALIZED"; session_register("var1","var2"); echo "INIT:<br>\n"; echo "var1 = '$var1'<br>"; echo "var2 = '$var2'<br><p>"; echo "<a href='test_bug2.php'>test_bug2.php</a>"; ?> <?php // test_bug2.php session_start(); echo "BEFORE:<br>\n"; echo "var1 = '$var1'<br>\n"; echo "var2 = '$var2'<br><p>\n"; $var2 = "CHANGED"; echo "AFTER:<br>\n"; echo "var1 = '$var1'<br>\n"; echo "var2 = '$var2'<br><p>\n"; $var2 = "EXIT"; ?> -- Edit bug report at http://bugs.php.net/?id=22117&edit=1 -- Try a CVS snapshot: http://bugs.php.net/fix.php?id=22117&r=trysnapshot Fixed in CVS: http://bugs.php.net/fix.php?id=22117&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=22117&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=22117&r=needtrace Try newer version: http://bugs.php.net/fix.php?id=22117&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=22117&r=support Expected behavior: http://bugs.php.net/fix.php?id=22117&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=22117&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=22117&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=22117&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=22117&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=22117&r=dst IIS Stability: http://bugs.php.net/fix.php?id=22117&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=22117&r=gnused