diff --git a/core/modules/content_moderation/tests/src/Functional/LayoutBuilderContentModerationIntegrationTest.php b/core/modules/content_moderation/tests/src/Functional/LayoutBuilderContentModerationIntegrationTest.php index 8e58a7dfa61..3f61ea9eeb6 100644 --- a/core/modules/content_moderation/tests/src/Functional/LayoutBuilderContentModerationIntegrationTest.php +++ b/core/modules/content_moderation/tests/src/Functional/LayoutBuilderContentModerationIntegrationTest.php @@ -23,6 +23,7 @@ class LayoutBuilderContentModerationIntegrationTest extends BrowserTestBase { 'layout_builder', 'node', 'content_moderation', + 'menu_ui', ]; /** @@ -76,6 +77,12 @@ class LayoutBuilderContentModerationIntegrationTest extends BrowserTestBase { ], ], ]); + _menu_ui_node_save($node, [ + 'title' => 'bar', + 'menu_name' => 'main', + 'description' => 'view bar', + 'parent' => '', + ]); $this->drupalGet($node->toUrl()); // Publish the node. Revision count: 2. diff --git a/core/modules/menu_ui/src/Plugin/Validation/Constraint/MenuSettingsConstraintValidator.php b/core/modules/menu_ui/src/Plugin/Validation/Constraint/MenuSettingsConstraintValidator.php index ed7f70c56a7..33bd6eb854c 100644 --- a/core/modules/menu_ui/src/Plugin/Validation/Constraint/MenuSettingsConstraintValidator.php +++ b/core/modules/menu_ui/src/Plugin/Validation/Constraint/MenuSettingsConstraintValidator.php @@ -16,9 +16,15 @@ class MenuSettingsConstraintValidator extends ConstraintValidator { public function validate($entity, Constraint $constraint) { if (isset($entity) && !$entity->isNew() && !$entity->isDefaultRevision()) { $defaults = menu_ui_get_menu_link_defaults($entity); - $values = $entity->menu; $violation_path = NULL; + // If the menu UI entity builder is not present and the menu property has + // not been set, do not attempt to validate the menu settings since they + // are not being modified. + if (!$values = $entity->menu) { + return; + } + if (trim($values['title']) && !empty($values['menu_parent'])) { list($menu_name, $parent) = explode(':', $values['menu_parent'], 2); $values['menu_name'] = $menu_name;