diff roundup/backends/sessions_dbm.py @ 3989:0112e9e1d068

improvements to session management
author Richard Jones <richard@users.sourceforge.net>
date Mon, 18 Aug 2008 05:04:02 +0000
parents 603ec9630b08
children 74476eaac38a
line wrap: on
line diff
--- a/roundup/backends/sessions_dbm.py	Thu Aug 07 22:02:30 2008 +0000
+++ b/roundup/backends/sessions_dbm.py	Mon Aug 18 05:04:02 2008 +0000
@@ -1,4 +1,4 @@
-#$Id: sessions_dbm.py,v 1.9 2007-09-27 06:18:53 jpend Exp $
+#$Id: sessions_dbm.py,v 1.10 2008-08-18 05:04:01 richard Exp $
 """This module defines a very basic store that's used by the CGI interface
 to store session and one-time-key information.
 
@@ -139,15 +139,15 @@
         if sess is None or now > sess + 60:
             self.set(sessid, __timestamp=now)
 
-    def clean(self, now):
-        """Age sessions, remove when they haven't been used for a week.
-        """
+    def clean(self):
+        ''' Remove session records that haven't been used for a week. '''
+        now = time.time()
         week = 60*60*24*7
         for sessid in self.list():
             sess = self.get(sessid, '__timestamp', None)
             if sess is None:
-                sess=time.time()
                 self.updateTimestamp(sessid)
+                continue
             interval = now - sess
             if interval > week:
                 self.destroy(sessid)

Roundup Issue Tracker: http://roundup-tracker.org/