From ed1757dce490773fb2de5ebadeabc8460ba447d7 Mon Sep 17 00:00:00 2001 From: Michael M Slusarz Date: Fri, 5 Nov 2010 17:05:13 -0600 Subject: [PATCH] Better modified existence check --- framework/Core/lib/Horde/Session.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/framework/Core/lib/Horde/Session.php b/framework/Core/lib/Horde/Session.php index 1b66caab5..60f2ca873 100644 --- a/framework/Core/lib/Horde/Session.php +++ b/framework/Core/lib/Horde/Session.php @@ -106,8 +106,10 @@ class Horde_Session session_start(); /* Create internal data arrays. */ - if (!isset($_SESSION[self::SERIALIZED])) { - /* Last modification time of session. */ + if (!isset($_SESSION[self::MODIFIED])) { + /* Last modification time of session. + * This will cause the check below to always return true + * (time() >= 0) and will set the initial value */ $_SESSION[self::MODIFIED] = 0; /* Is this key serialized? */ @@ -123,7 +125,7 @@ class Horde_Session * we are accessing the server via a periodic mechanism (think * folder refreshing in IMP) that we will catch this refresh. */ $curr_time = time(); - if (!isset($_SESSION[self::MODIFIED]) || $curr_time >= $_SESSION[self::MODIFIED]) { + if ($curr_time >= $_SESSION[self::MODIFIED]) { $_SESSION[self::MODIFIED] = intval($curr_time + (ini_get('session.gc_maxlifetime') / 2)); $this->sessionHandler->changed = true; } -- 2.11.0