diff --git a/securesite/securesite.inc b/securesite/securesite.inc
--- a/securesite/securesite.inc
+++ b/securesite/securesite.inc
@@ -225,11 +225,11 @@ function _securesite_guest_login($edit) {
   $guest_pass = variable_get('securesite_guest_pass', '');
   // Check anonymous user permission and credentials.
   if (user_access('access secured pages') && (empty($guest_name) || $edit['name'] == $guest_name) && (empty($guest_pass) || $edit['pass'] == $guest_pass)) {
-    // Unset the session variable set by securesite_denied().
-    unset($_SESSION['securesite_denied']);
     // Mark this session to prevent re-login (note: guests can't log out).
     $_SESSION['securesite_guest'] = $edit['name'];
     $_SESSION['securesite_login'] = TRUE;
+    // Unset the session variable set by securesite_denied().
+    unset($_SESSION['securesite_denied']);
     // Prevent a 403 error by redirecting off the logout page.
     if ($_GET['q'] == 'user/logout') {
       drupal_goto();
