From 36303e338d01e52f3ada9d2569d50106bfa6b921 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonel=20C=C3=A2mara?= Date: Tue, 10 Dec 2013 23:01:06 +0000 Subject: [PATCH] convert session to dict before pickling Session was constantly being pickled without converting to dict as it should be. --- gluon/globals.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gluon/globals.py b/gluon/globals.py index 58b2c0de..1c8f4419 100644 --- a/gluon/globals.py +++ b/gluon/globals.py @@ -878,7 +878,7 @@ class Session(Storage): response.cookies[response.session_id_name]['expires'] = \ cookie_expires.strftime(FMT) - session_pickled = cPickle.dumps(self) + session_pickled = cPickle.dumps(dict(self)) response.session_hash = hashlib.md5(session_pickled).hexdigest() if self.flash: @@ -1038,7 +1038,7 @@ class Session(Storage): return True def _unchanged(self,response): - session_pickled = cPickle.dumps(self) + session_pickled = cPickle.dumps(dict(self)) response.session_pickled = session_pickled session_hash = hashlib.md5(session_pickled).hexdigest() return response.session_hash == session_hash @@ -1065,7 +1065,7 @@ class Session(Storage): else: unique_key = response.session_db_unique_key - session_pickled = response.session_pickled or cPickle.dumps(self) + session_pickled = response.session_pickled or cPickle.dumps(dict(self)) dd = dict(locked=False, client_ip=response.session_client, @@ -1105,7 +1105,7 @@ class Session(Storage): portalocker.lock(response.session_file, portalocker.LOCK_EX) response.session_locked = True if response.session_file: - session_pickled = response.session_pickled or cPickle.dumps(self) + session_pickled = response.session_pickled or cPickle.dumps(dict(self)) response.session_file.write(session_pickled) response.session_file.truncate() finally: