From c078d23d16c1baaddfc72bbf9fa12b823fbd0c00 Mon Sep 17 00:00:00 2001 From: Christophe Simonis Date: Thu, 19 Jan 2012 15:30:57 +0100 Subject: [PATCH] [FIX] avoid blank page when the database assigned to the session has been removed bzr revid: chs@openerp.com-20120119143057-pbqdh15jptyc7y0a --- addons/web/common/session.py | 7 +++++++ addons/web/controllers/main.py | 1 + 2 files changed, 8 insertions(+) diff --git a/addons/web/common/session.py b/addons/web/common/session.py index ca23a08da4a..24564ba7bf8 100644 --- a/addons/web/common/session.py +++ b/addons/web/common/session.py @@ -80,6 +80,13 @@ class OpenERPSession(object): """ self.build_connection().check_login(force) + def ensure_valid(self): + if self._uid: + try: + self.assert_valid(True) + except Exception: + self._uid = None + def execute(self, model, func, *l, **d): self.assert_valid() model = self.build_connection().get_model(model) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index d578025b3b5..bb08393cae3 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -360,6 +360,7 @@ class Session(openerpweb.Controller): _cp_path = "/web/session" def session_info(self, req): + req.session.ensure_valid() return { "session_id": req.session_id, "uid": req.session._uid,