diff --git a/core/lib/Drupal/Core/Field/BaseFieldDefinition.php b/core/lib/Drupal/Core/Field/BaseFieldDefinition.php index 851c2aa..de638cc 100644 --- a/core/lib/Drupal/Core/Field/BaseFieldDefinition.php +++ b/core/lib/Drupal/Core/Field/BaseFieldDefinition.php @@ -83,14 +83,26 @@ public static function create($type) { * @return $this */ public static function createFromFieldStorageDefinition(FieldStorageDefinitionInterface $definition) { + // Preserve untranslated label/description strings/arguments. + $description_string = $label_string = NULL; + $description_arguments = $label_arguments = array(); $description = $definition->getUntranslatedDescription(); + if (isset($description)) { + $description_string = $description->getString(); + $description_arguments = $description->getArguments(); + } $label = $definition->getUntranslatedLabel(); + if (isset($label)) { + $label_string = $label->getString(); + $label_arguments = $label->getArguments(); + } + return static::create($definition->getType()) ->setCardinality($definition->getCardinality()) ->setConstraints($definition->getConstraints()) ->setCustomStorage($definition->hasCustomStorage()) - ->setDescription($description->getString(), $description->getArguments()) - ->setLabel($label->getString(), $label->getArguments()) + ->setDescription($description_string, $description_arguments) + ->setLabel($label_string, $label_arguments) ->setName($definition->getName()) ->setProvider($definition->getProvider()) ->setQueryable($definition->isQueryable())