diff --git a/module/VuFind/src/VuFind/Search/Base/Options.php b/module/VuFind/src/VuFind/Search/Base/Options.php index 6c4fa2a3fcf5df2da094e83f74ef83527573e8ff..5c501f8ff78717070681c9f516644a82f7af8139 100644 --- a/module/VuFind/src/VuFind/Search/Base/Options.php +++ b/module/VuFind/src/VuFind/Search/Base/Options.php @@ -426,7 +426,10 @@ abstract class Options implements ServiceLocatorAwareInterface */ public function rememberLastSort($last) { - $this->getSession()->lastSort = $last; + $session = $this->getSession(); + if (!$session->getManager()->getStorage()->isImmutable()) { + $session->lastSort = $last; + } } /** @@ -449,7 +452,10 @@ abstract class Options implements ServiceLocatorAwareInterface */ public function rememberLastLimit($last) { - $this->getSession()->lastLimit = $last; + $session = $this->getSession(); + if (!$session->getManager()->getStorage()->isImmutable()) { + $session->lastLimit = $last; + } } /** @@ -472,7 +478,10 @@ abstract class Options implements ServiceLocatorAwareInterface */ public function rememberLastView($last) { - $this->getSession()->lastView = $last; + $session = $this->getSession(); + if (!$session->getManager()->getStorage()->isImmutable()) { + $session->lastView = $last; + } } /**