Django

Code

Changeset 1978

Show
Ignore:
Timestamp:
01/15/06 00:18:03 (3 years ago)
Author:
adrian
Message:

Fixed #1048 -- Fixed AttributeError? in sessions framework when SESSION_SAVE_EVERY_REQUEST is True and no cookie has been set yet. Thanks, Jiri Barton

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/AUTHORS

    r1973 r1978  
    3636    David Ascher <http://ascher.ca/> 
    3737    Arthur <avandorp@gmail.com> 
     38    Jiri Barton 
    3839    James Bennett 
    3940    Paul Bissex <http://e-scribe.com/> 
  • django/trunk/django/middleware/sessions.py

    r1793 r1978  
    7070            modified = request.session.modified 
    7171        except AttributeError: 
    72             modified = False 
    73         if modified or SESSION_SAVE_EVERY_REQUEST: 
    74             session_key = request.session.session_key or sessions.get_new_session_key() 
    75             new_session = sessions.save(session_key, request.session._session, 
    76                 datetime.datetime.now() + datetime.timedelta(seconds=SESSION_COOKIE_AGE)) 
    77             expires = datetime.datetime.strftime(datetime.datetime.utcnow() + datetime.timedelta(seconds=SESSION_COOKIE_AGE), "%a, %d-%b-%Y %H:%M:%S GMT") 
    78             response.set_cookie(SESSION_COOKIE_NAME, session_key, 
    79                 max_age=SESSION_COOKIE_AGE, expires=expires, domain=SESSION_COOKIE_DOMAIN) 
     72            pass 
     73        else: 
     74            if modified or SESSION_SAVE_EVERY_REQUEST: 
     75                session_key = request.session.session_key or sessions.get_new_session_key() 
     76                new_session = sessions.save(session_key, request.session._session, 
     77                    datetime.datetime.now() + datetime.timedelta(seconds=SESSION_COOKIE_AGE)) 
     78                expires = datetime.datetime.strftime(datetime.datetime.utcnow() + datetime.timedelta(seconds=SESSION_COOKIE_AGE), "%a, %d-%b-%Y %H:%M:%S GMT") 
     79                response.set_cookie(SESSION_COOKIE_NAME, session_key, 
     80                    max_age=SESSION_COOKIE_AGE, expires=expires, domain=SESSION_COOKIE_DOMAIN) 
    8081        return response