From 797dc3a5cb6afcc582efb79799a333b598d13f95 Mon Sep 17 00:00:00 2001 From: Ryan Brereton-Canham <9389421+ryzr@users.noreply.github.com> Date: Mon, 19 Nov 2018 11:12:46 +1030 Subject: [PATCH] Compatibility with unserialized cookies --- src/Events/Listeners/CatchSluggableRoutes.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Events/Listeners/CatchSluggableRoutes.php b/src/Events/Listeners/CatchSluggableRoutes.php index 388645f9..1a4c1229 100644 --- a/src/Events/Listeners/CatchSluggableRoutes.php +++ b/src/Events/Listeners/CatchSluggableRoutes.php @@ -7,6 +7,7 @@ use Illuminate\Session\SessionManager; use Illuminate\Routing\Events\RouteMatched; use Illuminate\Contracts\Encryption\Encrypter; +use Illuminate\Cookie\Middleware\EncryptCookies; class CatchSluggableRoutes { @@ -69,9 +70,10 @@ protected function startSession(Request $request) public function getSession(Request $request) { return tap($this->sessionManager->driver(), function ($session) use ($request) { - if ($encryptedSessionId = $request->cookies->get($session->getName())) { - $sessionId = $this->encrypter->decrypt($encryptedSessionId); + $isSerialized = EncryptCookies::serialized($session->getName()); + if ($encryptedSessionId = $request->cookies->get($session->getName())) { + $sessionId = $this->encrypter->decrypt($encryptedSessionId, $isSerialized); $session->setId($sessionId); } });