diff --git a/lib/SimpleSAML/Locale/Localization.php b/lib/SimpleSAML/Locale/Localization.php index 88dad17e4cd5e8a4ccce1fb67e2562e93f42c29d..7596797ade510837fbdcb6d46328831d1166d476 100644 --- a/lib/SimpleSAML/Locale/Localization.php +++ b/lib/SimpleSAML/Locale/Localization.php @@ -10,6 +10,7 @@ declare(strict_types=1); namespace SimpleSAML\Locale; +use Gettext\Loader\PoLoader; use Gettext\Translations; use Gettext\Translator; use Gettext\TranslatorFunctions; @@ -231,8 +232,9 @@ class Localization $poFile = $domain . '.po'; $poPath = $langPath . $poFile; if (file_exists($poPath) && is_readable($poPath)) { - $translations = Translations::fromPoFile($poPath); - $this->translator->loadTranslations($translations); + $poLoader = new PoLoader(); + $translations = $poLoader->loadFile($poPath); + $this->translator->createFromTranslations($translations); } else { $error = "Localization file '$poFile' not found in '$langPath', falling back to default"; Logger::debug($_SERVER['PHP_SELF'] . ' - ' . $error);