Index: oscommerce2/trunk/catalog/includes/functions/sessions.php =================================================================== diff -u -r1647 -r1830 --- oscommerce2/trunk/catalog/includes/functions/sessions.php (.../sessions.php) (revision 1647) +++ oscommerce2/trunk/catalog/includes/functions/sessions.php (.../sessions.php) (revision 1830) @@ -1,15 +1,20 @@ = 4.3) && ((bool)ini_get('register_globals') == false) ) { + @ini_set('session.bug_compat_42', 1); + @ini_set('session.bug_compat_warn', 0); + } + if (STORE_SESSIONS == 'mysql') { if (!$SESS_LIFE = get_cfg_var('session.gc_maxlifetime')) { $SESS_LIFE = 1440; @@ -31,7 +36,7 @@ return $value['value']; } - return false; + return ''; } function _sess_write($key, $val) { @@ -104,9 +109,11 @@ if (PHP_VERSION < 4.3) { return session_register($variable); } else { - $_SESSION[$variable] = (isset($GLOBALS[$variable])) ? $GLOBALS[$variable] : null; - - $GLOBALS[$variable] =& $_SESSION[$variable]; + if (isset($GLOBALS[$variable])) { + $_SESSION[$variable] =& $GLOBALS[$variable]; + } else { + $_SESSION[$variable] = null; + } } } @@ -117,7 +124,7 @@ if (PHP_VERSION < 4.3) { return session_is_registered($variable); } else { - return isset($_SESSION[$variable]); + return isset($_SESSION) && array_key_exists($variable, $_SESSION); } }