diff options
Diffstat (limited to 'system')
| -rw-r--r-- | system/libraries/Session.php | 13 | ||||
| -rw-r--r-- | system/libraries/drivers/Session/Database.php | 4 | 
2 files changed, 17 insertions, 0 deletions
| diff --git a/system/libraries/Session.php b/system/libraries/Session.php index e03f5dff..61a0d403 100644 --- a/system/libraries/Session.php +++ b/system/libraries/Session.php @@ -27,6 +27,9 @@ class Session_Core {  	// Input library  	protected $input; +        // Automatically save the session by default +        public static $should_save = true; +  	/**  	 * Singleton instance of Session.  	 */ @@ -455,4 +458,14 @@ class Session_Core {  		}  	} +        /** +         * Do not save this session. +         * +         * @return  void +         */ +        public function abort_save() { +                Session::$should_save = false; + +        } +  } // End Session Class diff --git a/system/libraries/drivers/Session/Database.php b/system/libraries/drivers/Session/Database.php index b4144ffb..b8993a9e 100644 --- a/system/libraries/drivers/Session/Database.php +++ b/system/libraries/drivers/Session/Database.php @@ -98,6 +98,10 @@ class Session_Database_Driver implements Session_Driver {  	public function write($id, $data)  	{ +                if (!Session::$should_save) { +                        return true; +                } +  		$data = array  		(  			'session_id' => $id, | 
