From 692900ef8870f112dba99c5a68680af5140faada Mon Sep 17 00:00:00 2001 From: robbedg Date: Fri, 2 Sep 2022 17:30:02 +0200 Subject: [PATCH] fix: check if session if available (#478) Co-authored-by: Robbe De Geyndt --- EditInPlace/Activator.php | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/EditInPlace/Activator.php b/EditInPlace/Activator.php index 3184f6c..8289c59 100644 --- a/EditInPlace/Activator.php +++ b/EditInPlace/Activator.php @@ -50,10 +50,10 @@ public function setSession(Session $session): void /** * Get session based on availability. */ - private function getSession(): Session + private function getSession(): ?Session { $session = $this->session; - if (null === $session) { + if (null === $session && $this->requestStack->getCurrentRequest()->hasSession()) { $session = $this->requestStack->getSession(); } @@ -65,7 +65,9 @@ private function getSession(): Session */ public function activate(): void { - $this->getSession()->set(self::KEY, true); + if (null !== $this->getSession()) { + $this->getSession()->set(self::KEY, true); + } } /** @@ -73,7 +75,9 @@ public function activate(): void */ public function deactivate(): void { - $this->getSession()->remove(self::KEY); + if (null !== $this->getSession()) { + $this->getSession()->remove(self::KEY); + } } /** @@ -81,7 +85,7 @@ public function deactivate(): void */ public function checkRequest(Request $request = null): bool { - if (!$this->getSession()->has(self::KEY)) { + if (null === $this->getSession() || !$this->getSession()->has(self::KEY)) { return false; }