]> git.parisson.com Git - django-social-auth.git/commitdiff
read redirect field value from session before login() will flush session
authorYoungrok pak <pak.youngrok@gmail.com>
Wed, 14 Dec 2011 17:58:13 +0000 (02:58 +0900)
committerYoungrok pak <pak.youngrok@gmail.com>
Wed, 14 Dec 2011 17:58:13 +0000 (02:58 +0900)
social_auth/views.py

index e0d0e7314d923d674f3266ad474e5e7e3e0f15f7..a906576fe139be1a9241b098986237b64d077c43 100644 (file)
@@ -148,6 +148,7 @@ def auth_process(request, backend):
 def complete_process(request, backend, *args, **kwargs):
     """Authentication complete process"""
     user = auth_complete(request, backend, *args, **kwargs)
+    redirect_value = request.session.pop(REDIRECT_FIELD_NAME, '')
 
     if user and getattr(user, 'is_active', True):
         login(request, user)
@@ -169,7 +170,7 @@ def complete_process(request, backend, *args, **kwargs):
         # send him to the new-users-page if defined.
         url = NEW_USER_REDIRECT if NEW_USER_REDIRECT and \
                                    getattr(user, 'is_new', False) else \
-              request.session.pop(REDIRECT_FIELD_NAME, '') or \
+              redirect_value or \
               DEFAULT_REDIRECT
     else:
         if ERROR_MESSAGE: