Skip to content

Commit c34abc0

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

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
@@ -100,8 +100,8 @@ private function generateSignedFragmentUri($uri, Request $request)
100100
private function containsNonScalars(array $values)
101101
{
102102
foreach ($values as $value) {
103-
if (is_array($value) && $this->containsNonScalars($value)) {
104-
return true;
103+
if (is_array($value)) {
104+
return $this->containsNonScalars($value);
105105
} elseif (!is_scalar($value) && null !== $value) {
106106
return true;
107107
}

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

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

0 commit comments

Comments
 (0)