From 74dffb3f63102eb306dc261acb905e539ac26d72 Mon Sep 17 00:00:00 2001 From: Peter Rotich <peter@osticket.com> Date: Thu, 18 Oct 2012 13:26:25 -0400 Subject: [PATCH] Remove session_write_close() & make sure we don't destroy current session --- include/class.client.php | 6 ++---- include/class.staff.php | 4 +--- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/include/class.client.php b/include/class.client.php index 087215ce7..a650adbbe 100644 --- a/include/class.client.php +++ b/include/class.client.php @@ -185,7 +185,7 @@ class Client { $_SESSION['_client']['token'] = $user->getSessionToken(); $_SESSION['TZ_OFFSET'] = $cfg->getTZoffset(); $_SESSION['TZ_DST'] = $cfg->observeDaylightSaving(); - + $user->refreshSession(); //set the hash. //Log login info... $msg=sprintf('%s/%s logged in [%s]', $ticket->getEmail(), $ticket->getExtId(), $_SERVER['REMOTE_ADDR']); $ost->logDebug('User login', $msg); @@ -193,11 +193,9 @@ class Client { //Regenerate session ID. $sid=session_id(); //Current session id. session_regenerate_id(TRUE); //get new ID. - if(($session=$ost->getSession()) && is_object($session) && $sid) + if(($session=$ost->getSession()) && is_object($session) && $sid!=session_id()) $session->destroy($sid); - session_write_close(); - return $user; } diff --git a/include/class.staff.php b/include/class.staff.php index 778041e7c..08e1a79e2 100644 --- a/include/class.staff.php +++ b/include/class.staff.php @@ -594,10 +594,8 @@ class Staff { $sid=session_id(); //Current id session_regenerate_id(TRUE); //Destroy old session ID - needed for PHP version < 5.1.0 TODO: remove when we move to php 5.3 as min. requirement. - if(($session=$ost->getSession()) && is_object($session) && $sid) + if(($session=$ost->getSession()) && is_object($session) && $sid!=session_id()) $session->destroy($sid); - - session_write_close(); return $user; } -- GitLab