From da3e32f9451bb67aa1e2fc083ada0c65a050bfd8 Mon Sep 17 00:00:00 2001 From: Matias Griese Date: Thu, 2 Dec 2021 15:05:29 +0200 Subject: [PATCH] PHP 8.1: Use strict parameters in `Session` class --- system/src/Grav/Framework/Session/Session.php | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/system/src/Grav/Framework/Session/Session.php b/system/src/Grav/Framework/Session/Session.php index 344c67f12..f356b2053 100644 --- a/system/src/Grav/Framework/Session/Session.php +++ b/system/src/Grav/Framework/Session/Session.php @@ -189,7 +189,12 @@ class Session implements SessionInterface return $this; } - $sessionName = session_name(); + $sessionName = $this->getName(); + $sessionId = $this->getId(); + if (null === $sessionName || null === $sessionId) { + return $this; + } + $sessionExists = isset($_COOKIE[$sessionName]); // Protection against invalid session cookie names throwing exception: http://php.net/manual/en/function.session-id.php#116836 @@ -341,7 +346,7 @@ class Session implements SessionInterface $this->removeCookie(); setcookie( - session_name(), + $name, '', $this->getCookieOptions(-42000) ); @@ -483,9 +488,15 @@ class Session implements SessionInterface { $this->removeCookie(); + $sessionName = $this->getName(); + $sessionId = $this->getId(); + if (null === $sessionName || null === $sessionId) { + return; + } + setcookie( - session_name(), - session_id(), + $sessionName, + $sessionId, $this->getCookieOptions() ); }