Catalyst::Plugin::Session::Test::Store fix
[catagits/Catalyst-Plugin-Session.git] / lib / Catalyst / Plugin / Session.pm
index e4b8a84..732b56c 100644 (file)
@@ -12,7 +12,7 @@ use Digest              ();
 use overload            ();
 use Object::Signature   ();
 
-our $VERSION = "0.05";
+our $VERSION = "0.09";
 
 my @session_data_accessors; # used in delete_session
 BEGIN {
@@ -252,8 +252,7 @@ sub delete_session {
     # delete the session data
     if ( my $sid = $c->sessionid ) {
         $c->delete_session_data("${_}:${sid}") for qw/session expires flash/;
-
-        $c->delete_session_id;
+        $c->delete_session_id($sid);
     }
 
     # reset the values in the context object
@@ -320,7 +319,8 @@ sub _load_sessionid {
 
     if ( defined( my $sid = $c->get_session_id ) ) {
         if ( $c->validate_session_id($sid) ) {
-            $c->_sessionid( $sid );
+            # temporarily set the inner key, so that validation will work
+            $c->_sessionid($sid);
             return $sid;
         } else {
             my $err = "Tried to set invalid session ID '$sid'";