From 441a3434f37ecd96e0aaec03dd854aeb73b0d1fe Mon Sep 17 00:00:00 2001 From: Roeland Jago Douma Date: Mon, 2 Nov 2020 15:02:04 +0100 Subject: [PATCH] Move localecache to array It seems the DS Set in the polyfill implementation is a lot less efficient than normal arrays. (A LOT!). So for now use a stupid normal array. Signed-off-by: Roeland Jago Douma --- lib/private/L10N/Factory.php | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/lib/private/L10N/Factory.php b/lib/private/L10N/Factory.php index b807f5cb63..9c9a3cc951 100644 --- a/lib/private/L10N/Factory.php +++ b/lib/private/L10N/Factory.php @@ -37,7 +37,6 @@ namespace OC\L10N; -use Ds\Set; use OCP\IConfig; use OCP\IRequest; use OCP\IUser; @@ -65,9 +64,9 @@ class Factory implements IFactory { protected $availableLanguages = []; /** - * @var Set + * @var array */ - protected $localeCache; + protected $localeCache = []; /** * @var array @@ -110,7 +109,6 @@ class Factory implements IFactory { $this->request = $request; $this->userSession = $userSession; $this->serverRoot = $serverRoot; - $this->localeCache = new Set(); } /** @@ -398,14 +396,14 @@ class Factory implements IFactory { return true; } - if ($this->localeCache->isEmpty()) { + if ($this->localeCache === []) { $locales = $this->findAvailableLocales(); foreach ($locales as $l) { - $this->localeCache->add($l['code']); + $this->localeCache[$l['code']] = true; } } - return $this->localeCache->contains($locale); + return isset($this->localeCache[$locale]); } /**