From e73c04501ebfe5d7e3f7895b349c941b7483ae6f Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 28 May 2013 01:10:18 +0200 Subject: [PATCH] Fix session not working error --- lib/base.php | 5 ++++- lib/session/internal.php | 1 - 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/base.php b/lib/base.php index c6ea32362e..42b5752706 100644 --- a/lib/base.php +++ b/lib/base.php @@ -290,9 +290,12 @@ class OC { try{ // set the session name to the instance id - which is unique - self::$session=new \OC\Session\Internal(OC_Util::getInstanceId()); + self::$session = new \OC\Session\Internal(OC_Util::getInstanceId()); // if session cant be started break with http 500 error }catch (Exception $e){ + //set the session object to a dummy session so code relying on the session existing still works + self::$session = new \OC\Session\Memory(''); + OC_Log::write('core', 'Session could not be initialized', OC_Log::ERROR); diff --git a/lib/session/internal.php b/lib/session/internal.php index 713a154ecc..1f8fda47a9 100644 --- a/lib/session/internal.php +++ b/lib/session/internal.php @@ -17,7 +17,6 @@ namespace OC\Session; */ class Internal extends Memory { public function __construct($name) { - session_write_close(); session_name($name); if (@session_start()) { throw new \Exception('Failed to start session');