diff --git a/lib/SimpleSAML/Session.php b/lib/SimpleSAML/Session.php index a6932766739691bea6efdec1e317bb80b7ba3209..50e6ad9e92e02954627454e1c226b7895feca260 100644 --- a/lib/SimpleSAML/Session.php +++ b/lib/SimpleSAML/Session.php @@ -753,18 +753,16 @@ class SimpleSAML_Session implements Serializable */ public function updateSessionCookies($params = null) { - $sessionHandler = \SimpleSAML\SessionHandler::getSessionHandler(); + assert(is_null($params) || is_array($params)); - if (is_array($params) && !empty($params)) { - $params = array_merge($sessionHandler->getCookieParams(), $params); - } else { - $params = $sessionHandler->getCookieParams(); - } + $sessionHandler = \SimpleSAML\SessionHandler::getSessionHandler(); if ($this->sessionId !== null) { $sessionHandler->setCookie($sessionHandler->getSessionCookieName(), $this->sessionId, $params); } + $params = array_merge($sessionHandler->getCookieParams(), is_array($params) ? $params : array()); + if ($this->authToken !== null) { $globalConfig = SimpleSAML_Configuration::getInstance(); \SimpleSAML\Utils\HTTP::setCookie(