Changeset 10:f9785bef38e3

Show
Ignore:
Timestamp:
04/23/05 02:46:05 (3 years ago)
Author:
Allan Saddi <allan@saddi.com>
branch:
default
convert_revision:
svn:46762da8-4eb7-0310-94e9-d918b60927c8/flup/trunk@1780
Message:

Ensure SessionStore?.checkOutSession() never returns an invalidated Session.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • flup/middleware/session.py

    r1 r10  
    203203            sess = self._loadSession(identifier) 
    204204            if sess is not None: 
    205                 assert sess.identifier not in self._checkOutList 
    206                 self._checkOutList[sess.identifier] = sess 
    207                 sess.touch() 
     205                if sess.isValid: 
     206                    assert sess.identifier not in self._checkOutList 
     207                    self._checkOutList[sess.identifier] = sess 
     208                    sess.touch() 
     209                else: 
     210                    # No longer valid (same as not existing). Delete/unlock 
     211                    # the session. 
     212                    self._deleteSession(sess.identifier) 
     213                    sess = None 
    208214            return sess 
    209215        finally: