Loading core/lib/Drupal/Core/Controller/TitleResolver.php +2 −2 Original line number Diff line number Diff line Loading @@ -65,8 +65,8 @@ public function getTitle(Request $request, Route $route) { $args = []; if (($raw_parameters = $request->attributes->get('_raw_variables'))) { foreach ($raw_parameters->all() as $key => $value) { $args['@' . $key] = $value; $args['%' . $key] = $value; $args['@' . $key] = $value ?? ''; $args['%' . $key] = $value ?? ''; } } if ($title_arguments = $route->getDefault('_title_arguments')) { Loading core/tests/Drupal/Tests/Core/Controller/TitleResolverTest.php +18 −0 Original line number Diff line number Diff line Loading @@ -102,6 +102,24 @@ public function providerTestStaticTitleWithParameter() { ]; } /** * Tests a static title with a NULL value parameter. * * @see \Drupal\Core\Controller\TitleResolver::getTitle() */ public function testStaticTitleWithNullValueParameter() { $raw_variables = new ParameterBag(['test' => NULL, 'test2' => 'value']); $request = new Request(); $request->attributes->set('_raw_variables', $raw_variables); $route = new Route('/test-route', ['_title' => 'static title %test @test']); $translatable_markup = $this->titleResolver->getTitle($request, $route); $this->assertSame('', $translatable_markup->getArguments()['@test']); $this->assertSame('', $translatable_markup->getArguments()['%test']); $this->assertSame('value', $translatable_markup->getArguments()['@test2']); $this->assertSame('value', $translatable_markup->getArguments()['%test2']); } /** * Tests a dynamic title. * Loading Loading
core/lib/Drupal/Core/Controller/TitleResolver.php +2 −2 Original line number Diff line number Diff line Loading @@ -65,8 +65,8 @@ public function getTitle(Request $request, Route $route) { $args = []; if (($raw_parameters = $request->attributes->get('_raw_variables'))) { foreach ($raw_parameters->all() as $key => $value) { $args['@' . $key] = $value; $args['%' . $key] = $value; $args['@' . $key] = $value ?? ''; $args['%' . $key] = $value ?? ''; } } if ($title_arguments = $route->getDefault('_title_arguments')) { Loading
core/tests/Drupal/Tests/Core/Controller/TitleResolverTest.php +18 −0 Original line number Diff line number Diff line Loading @@ -102,6 +102,24 @@ public function providerTestStaticTitleWithParameter() { ]; } /** * Tests a static title with a NULL value parameter. * * @see \Drupal\Core\Controller\TitleResolver::getTitle() */ public function testStaticTitleWithNullValueParameter() { $raw_variables = new ParameterBag(['test' => NULL, 'test2' => 'value']); $request = new Request(); $request->attributes->set('_raw_variables', $raw_variables); $route = new Route('/test-route', ['_title' => 'static title %test @test']); $translatable_markup = $this->titleResolver->getTitle($request, $route); $this->assertSame('', $translatable_markup->getArguments()['@test']); $this->assertSame('', $translatable_markup->getArguments()['%test']); $this->assertSame('value', $translatable_markup->getArguments()['@test2']); $this->assertSame('value', $translatable_markup->getArguments()['%test2']); } /** * Tests a dynamic title. * Loading