diff --git a/lib/WebGUI/Operation/Account.pm b/lib/WebGUI/Operation/Account.pm index 1c7392ddd..f43426392 100644 --- a/lib/WebGUI/Operation/Account.pm +++ b/lib/WebGUI/Operation/Account.pm @@ -235,6 +235,7 @@ sub www_deactivateAccountConfirm { $u = WebGUI::User->new($session{user}{userId}); $u->status("Selfdestructed"); WebGUI::Session::end($session{var}{sessionId}); + WebGUI::Session::start(1); } return www_displayLogin(); } @@ -408,6 +409,7 @@ sub www_login { #------------------------------------------------------------------- sub www_logout { WebGUI::Session::end($session{var}{sessionId}); + WebGUI::Session::start(1); return ""; } diff --git a/lib/WebGUI/Session.pm b/lib/WebGUI/Session.pm index 5ec1ede27..1733d3390 100644 --- a/lib/WebGUI/Session.pm +++ b/lib/WebGUI/Session.pm @@ -296,7 +296,10 @@ sub end { WebGUI::SQL->write("delete from userSession where sessionId='$_[0]'",$session{dbh}); WebGUI::SQL->write("delete from userSessionScratch where sessionId='$_[0]'",$session{dbh}); if ($_[0] eq $session{var}{sessionId}) { - refreshSessionVars(); + delete $session{user}; + delete $session{isInGroup}; + delete $session{var}; + delete $session{scratch}; } }