diff --git a/core/includes/theme.inc b/core/includes/theme.inc
index 7236963..b6ce5f0 100644
--- a/core/includes/theme.inc
+++ b/core/includes/theme.inc
@@ -1576,9 +1576,7 @@ function template_preprocess_field_multiple_value_form(&$variables) {
array(
'data' => array(
'#prefix' => '
',
- 'title' => array(
- '#markup' => t($element['#title']),
- ),
+ '#markup' => $element['#title'],
'#suffix' => '
',
),
'colspan' => 2,
diff --git a/core/modules/system/src/Tests/Entity/EntityBaseFieldTest.php b/core/modules/system/src/Tests/Entity/EntityBaseFieldTest.php
new file mode 100644
index 0000000..a13038f
--- /dev/null
+++ b/core/modules/system/src/Tests/Entity/EntityBaseFieldTest.php
@@ -0,0 +1,45 @@
+drupalCreateUser(['administer entity_test content']);
+ $this->drupalLogin($user);
+
+ $entity = EntityTestBaseFieldDisplay::create(['name' => $this->randomString()]);
+ $entity->save();
+
+ $this->drupalGet('entity_test_base_field_display/manage/' . $entity->id());
+ $this->assertResponse(200);
+ $this->assertRaw($entity->label());
+ $this->assertText('A field with multiple values');
+ // Test if labels were XSS filtered.
+ $this->assertEscaped("");
+ }
+
+}
diff --git a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestBaseFieldDisplay.php b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestBaseFieldDisplay.php
index 210eb53..2a5ca41 100644
--- a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestBaseFieldDisplay.php
+++ b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestBaseFieldDisplay.php
@@ -9,6 +9,7 @@
use Drupal\Core\Entity\EntityTypeInterface;
use Drupal\Core\Field\BaseFieldDefinition;
+use Drupal\entity_test\FieldStorageDefinition;
/**
* Defines a test entity class for base fields display.
@@ -23,9 +24,10 @@
* },
* "translation" = "Drupal\content_translation\ContentTranslationHandler"
* },
- * base_table = "entity_test",
+ * base_table = "entity_test_base_field_display",
* entity_keys = {
* "id" = "id",
+ * "label" = "name",
* "uuid" = "uuid",
* "bundle" = "type"
* },
@@ -70,6 +72,31 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
'weight' => 11,
));
+ $fields['test_display_multiple'] = BaseFieldDefinition::create('text')
+ ->setLabel(t('A field with multiple values'))
+ ->setCardinality(FieldStorageDefinition::CARDINALITY_UNLIMITED)
+ ->setDisplayOptions('view', array(
+ 'type' => 'text_default',
+ 'weight' => 12,
+ ))
+ ->setDisplayOptions('form', array(
+ 'type' => 'text_textfield',
+ 'weight' => 12,
+ ));
+
+ // A multi-value base field with a dangerous label.
+ $fields['test_display_another_multiple'] = BaseFieldDefinition::create('text')
+ ->setLabel("")
+ ->setCardinality(FieldStorageDefinition::CARDINALITY_UNLIMITED)
+ ->setDisplayOptions('view', array(
+ 'type' => 'text_default',
+ 'weight' => 12,
+ ))
+ ->setDisplayOptions('form', array(
+ 'type' => 'text_textfield',
+ 'weight' => 12,
+ ));
+
return $fields;
}