From 7c152676289e0e4c4d3951f96ee9e018cd70071d Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Fri, 7 Dec 2018 15:31:10 +0000 Subject: [PATCH] filter out invalid language values --- .../Component/Form/Extension/Core/Type/LanguageType.php | 5 ----- .../Form/Tests/Extension/Core/Type/LanguageTypeTest.php | 8 ++++++++ 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/Symfony/Component/Form/Extension/Core/Type/LanguageType.php b/src/Symfony/Component/Form/Extension/Core/Type/LanguageType.php index 04f25a62f206f..1e82b9850569f 100644 --- a/src/Symfony/Component/Form/Extension/Core/Type/LanguageType.php +++ b/src/Symfony/Component/Form/Extension/Core/Type/LanguageType.php @@ -89,11 +89,6 @@ public function loadChoicesForValues(array $values, $value = null) return array(); } - // If no callable is set, values are the same as choices - if (null === $value) { - return $values; - } - return $this->loadChoiceList($value)->getChoicesForValues($values); } diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/LanguageTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/LanguageTypeTest.php index 5cf578d442b25..8d469d2b41ba7 100644 --- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/LanguageTypeTest.php +++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/LanguageTypeTest.php @@ -12,6 +12,7 @@ namespace Symfony\Component\Form\Tests\Extension\Core\Type; use Symfony\Component\Form\ChoiceList\View\ChoiceView; +use Symfony\Component\Form\Extension\Core\Type\LanguageType; use Symfony\Component\Intl\Util\IntlTestHelper; class LanguageTypeTest extends BaseTypeTest @@ -54,4 +55,11 @@ public function testSubmitNullUsesDefaultEmptyData($emptyData = 'en', $expectedD { parent::testSubmitNullUsesDefaultEmptyData($emptyData, $expectedData); } + + public function testInvalidChoiceValuesAreDropped() + { + $type = new LanguageType(); + + $this->assertSame(array(), $type->loadChoicesForValues(array('foo'))); + } }