From 02acd86290077dab2f12ae91b3e9f141c079d84c Mon Sep 17 00:00:00 2001 From: Nicolas Grekas Date: Tue, 30 Jan 2024 08:55:07 +0100 Subject: [PATCH] [Mime] Fix serializing uninitialized RawMessage::$message to null --- Normalizer/MimeMessageNormalizer.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Normalizer/MimeMessageNormalizer.php b/Normalizer/MimeMessageNormalizer.php index 7519ad69..a1e13183 100644 --- a/Normalizer/MimeMessageNormalizer.php +++ b/Normalizer/MimeMessageNormalizer.php @@ -17,6 +17,7 @@ use Symfony\Component\Mime\Header\UnstructuredHeader; use Symfony\Component\Mime\Message; use Symfony\Component\Mime\Part\AbstractPart; +use Symfony\Component\Mime\RawMessage; use Symfony\Component\Serializer\SerializerAwareInterface; use Symfony\Component\Serializer\SerializerInterface; @@ -63,15 +64,18 @@ public function normalize($object, ?string $format = null, array $context = []) return $ret; } + $ret = $this->normalizer->normalize($object, $format, $context); + if ($object instanceof AbstractPart) { - $ret = $this->normalizer->normalize($object, $format, $context); $ret['class'] = \get_class($object); unset($ret['seekable'], $ret['cid'], $ret['handle']); + } - return $ret; + if ($object instanceof RawMessage && \array_key_exists('message', $ret) && null === $ret['message']) { + unset($ret['message']); } - return $this->normalizer->normalize($object, $format, $context); + return $ret; } /**