diff --git a/src/Symfony/Component/Form/Extension/Core/DataMapper/PropertyPathMapper.php b/src/Symfony/Component/Form/Extension/Core/DataMapper/PropertyPathMapper.php index 5f1ae2d2e8..5bd6afa01e 100644 --- a/src/Symfony/Component/Form/Extension/Core/DataMapper/PropertyPathMapper.php +++ b/src/Symfony/Component/Form/Extension/Core/DataMapper/PropertyPathMapper.php @@ -71,9 +71,7 @@ class PropertyPathMapper implements DataMapperInterface if (null !== $propertyPath && $config->getMapped() && $form->isSynchronized() && !$form->isDisabled()) { // If the data is identical to the value in $data, we are // dealing with a reference - $isReference = $form->getData() === $propertyPath->getValue($data); - - if (!is_object($data) || !$isReference || !$config->getByReference()) { + if (!is_object($data) || !$config->getByReference() || $form->getData() !== $propertyPath->getValue($data)) { $propertyPath->setValue($data, $form->getData()); } }