From fd00244269b075243e343adba11e2abddf968b73 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Mon, 29 Jan 2024 11:52:16 +0100 Subject: [PATCH] do not overwrite the cache key when it is false --- .../Normalizer/AbstractObjectNormalizer.php | 2 +- .../Normalizer/AbstractObjectNormalizerTest.php | 15 --------------- 2 files changed, 1 insertion(+), 16 deletions(-) diff --git a/src/Symfony/Component/Serializer/Normalizer/AbstractObjectNormalizer.php b/src/Symfony/Component/Serializer/Normalizer/AbstractObjectNormalizer.php index 25341e2346243..4b03fa9ddb116 100644 --- a/src/Symfony/Component/Serializer/Normalizer/AbstractObjectNormalizer.php +++ b/src/Symfony/Component/Serializer/Normalizer/AbstractObjectNormalizer.php @@ -783,7 +783,7 @@ protected function createChildContext(array $parentContext, string $attribute, ? $context = parent::createChildContext($parentContext, $attribute, $format); if ($context['cache_key'] ?? false) { $context['cache_key'] .= '-'.$attribute; - } else { + } elseif (false !== ($context['cache_key'] ?? null)) { $context['cache_key'] = $this->getCacheKey($format, $context); } diff --git a/src/Symfony/Component/Serializer/Tests/Normalizer/AbstractObjectNormalizerTest.php b/src/Symfony/Component/Serializer/Tests/Normalizer/AbstractObjectNormalizerTest.php index 5a1d1613a7788..5adc3d4eef74d 100644 --- a/src/Symfony/Component/Serializer/Tests/Normalizer/AbstractObjectNormalizerTest.php +++ b/src/Symfony/Component/Serializer/Tests/Normalizer/AbstractObjectNormalizerTest.php @@ -555,11 +555,6 @@ public function testProvidingContextCacheKeyGeneratesSameChildContextCacheKey() $foobar->foo = new EmptyDummy(); $foobar->bar = 'bar'; $foobar->baz = 'baz'; - $data = [ - 'foo' => [], - 'bar' => 'bar', - 'baz' => 'baz', - ]; $normalizer = new class() extends AbstractObjectNormalizerDummy { public $childContextCacheKey; @@ -600,11 +595,6 @@ public function testChildContextKeepsOriginalContextCacheKey() $foobar->foo = new EmptyDummy(); $foobar->bar = 'bar'; $foobar->baz = 'baz'; - $data = [ - 'foo' => [], - 'bar' => 'bar', - 'baz' => 'baz', - ]; $normalizer = new class() extends AbstractObjectNormalizerDummy { public $childContextCacheKey; @@ -640,11 +630,6 @@ public function testChildContextCacheKeyStaysFalseWhenOriginalCacheKeyIsFalse() $foobar->foo = new EmptyDummy(); $foobar->bar = 'bar'; $foobar->baz = 'baz'; - $data = [ - 'foo' => [], - 'bar' => 'bar', - 'baz' => 'baz', - ]; $normalizer = new class() extends AbstractObjectNormalizerDummy { public $childContextCacheKey;