From 63497e1761807636da5ee4c4d0dea564109cf20a Mon Sep 17 00:00:00 2001 From: Javier Spagnoletti Date: Wed, 7 Feb 2018 02:53:01 -0300 Subject: [PATCH] Use `Symfony\Component\Intl\Locale` instead of `\Locale` + read aliases from bundle only if it is required --- .../Component/Validator/Constraints/LocaleValidator.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Symfony/Component/Validator/Constraints/LocaleValidator.php b/src/Symfony/Component/Validator/Constraints/LocaleValidator.php index bf73a560c4..49783b6698 100644 --- a/src/Symfony/Component/Validator/Constraints/LocaleValidator.php +++ b/src/Symfony/Component/Validator/Constraints/LocaleValidator.php @@ -12,6 +12,7 @@ namespace Symfony\Component\Validator\Constraints; use Symfony\Component\Intl\Intl; +use Symfony\Component\Intl\Locale as IntlLocale; use Symfony\Component\Validator\Constraint; use Symfony\Component\Validator\ConstraintValidator; use Symfony\Component\Validator\Exception\UnexpectedTypeException; @@ -42,12 +43,12 @@ class LocaleValidator extends ConstraintValidator $value = (string) $value; if ($constraint->canonicalize) { - $value = \Locale::canonicalize($value); + $value = IntlLocale::canonicalize($value); } - $locales = Intl::getLocaleBundle()->getLocaleNames(); - $aliases = Intl::getLocaleBundle()->getAliases(); + $localeBundle = Intl::getLocaleBundle(); + $locales = $localeBundle->getLocaleNames(); - if (!isset($locales[$value]) && !in_array($value, $aliases)) { + if (!isset($locales[$value]) && !in_array($value, $localeBundle->getAliases(), true)) { $this->context->buildViolation($constraint->message) ->setParameter('{{ value }}', $this->formatValue($value)) ->setCode(Locale::NO_SUCH_LOCALE_ERROR)