diff --git a/application/loginwebpage.class.inc.php b/application/loginwebpage.class.inc.php index 515ed00f17..18140c5586 100644 --- a/application/loginwebpage.class.inc.php +++ b/application/loginwebpage.class.inc.php @@ -25,11 +25,11 @@ */ use Combodo\iTop\Application\Branding; -use Combodo\iTop\Application\Helper\Session; use Combodo\iTop\Application\WebPage\ErrorPage; use Combodo\iTop\Application\WebPage\NiceWebPage; use Combodo\iTop\Service\Events\EventData; use Combodo\iTop\Service\Events\EventService; +use Combodo\iTop\Service\Session\Session; /** * Web page used for displaying the login form diff --git a/sources/Service/Session/Session.php b/sources/Service/Session/Session.php index f3952603a9..b2145205f5 100644 --- a/sources/Service/Session/Session.php +++ b/sources/Service/Session/Session.php @@ -139,8 +139,12 @@ class Session */ public static function UnsetAll(): void { - foreach (self::ListVariables() as $sKey) { - self::Unset($sKey); + if (session_status() !== PHP_SESSION_ACTIVE) { + self::Start(); + $_SESSION = []; + self::WriteClose(); + } else { + $_SESSION = []; } }