Skip to content

Commit d84b47f

Browse files
author
Amrouche Hamza
committed
[HttpKernel] Arrays with scalar values passed to ESI fragment renderer throw deprecation notice
1 parent 020d78a commit d84b47f

File tree

2 files changed

+11
-3
lines changed

2 files changed

+11
-3
lines changed

src/Symfony/Component/HttpKernel/Fragment/AbstractSurrogateFragmentRenderer.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -98,8 +98,8 @@ private function generateSignedFragmentUri($uri, Request $request)
9898
private function containsNonScalars(array $values)
9999
{
100100
foreach ($values as $value) {
101-
if (is_array($value) && $this->containsNonScalars($value)) {
102-
return true;
101+
if (is_array($value)) {
102+
return $this->containsNonScalars($value);
103103
} elseif (!is_scalar($value) && null !== $value) {
104104
return true;
105105
}

src/Symfony/Component/HttpKernel/Tests/Fragment/EsiFragmentRendererTest.php

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,15 @@ public function testRenderFallbackWithObjectAttributesIsDeprecated()
3434
{
3535
$strategy = new EsiFragmentRenderer(new Esi(), $this->getInlineStrategy(true), new UriSigner('foo'));
3636
$request = Request::create('/');
37-
$reference = new ControllerReference('main_controller', array('foo' => array('a' => array(), 'b' => new \stdClass())), array());
37+
$reference = new ControllerReference('main_controller', array('foo' => new \stdClass()), array());
38+
$strategy->render($reference, $request);
39+
}
40+
41+
public function testRenderFallbackWithScalarIsNotDeprecated()
42+
{
43+
$strategy = new EsiFragmentRenderer(new Esi(), $this->getInlineStrategy(true), new UriSigner('foo'));
44+
$request = Request::create('/');
45+
$reference = new ControllerReference('main_controller', array('foo' => array(true)), array());
3846
$strategy->render($reference, $request);
3947
}
4048

0 commit comments

Comments
 (0)