web/views/sessions.py
branchstable
changeset 7817 cb6174065c39
parent 7815 2a164a9cf81c
child 7854 d95a76df33a9
--- a/web/views/sessions.py	Wed Sep 21 17:38:00 2011 +0200
+++ b/web/views/sessions.py	Wed Sep 21 18:35:39 2011 +0200
@@ -21,7 +21,8 @@
 
 __docformat__ = "restructuredtext en"
 
-from cubicweb import RepositoryError, Unauthorized, AuthenticationError
+from cubicweb import (RepositoryError, Unauthorized, AuthenticationError,
+                      BadConnectionId)
 from cubicweb.web import InvalidSession, Redirect
 from cubicweb.web.application import AbstractSessionManager
 from cubicweb.dbapi import DBAPISession
@@ -130,5 +131,8 @@
         self.info('closing http session %s' % session.sessionid)
         del self._sessions[session.sessionid]
         if session.cnx:
-            session.cnx.close()
+            try:
+                session.cnx.close()
+            except BadConnectionId: # expired on the repository side
+                pass
             session.cnx = None