X-Git-Url: http://aleph1.co.uk/gitweb/?a=blobdiff_plain;f=web%2Fcore%2Fmodules%2Fserialization%2Fsrc%2FNormalizer%2FTypedDataNormalizer.php;h=690fd8db252e0f342281f3fac1cd851b46212502;hb=4f1b9b4ab48a8498afac9e2213a02a23ccf4a06c;hp=60ce7d08f696547ed1fb4ab8211aeb80fc715e19;hpb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;p=yaffs-website diff --git a/web/core/modules/serialization/src/Normalizer/TypedDataNormalizer.php b/web/core/modules/serialization/src/Normalizer/TypedDataNormalizer.php index 60ce7d08f..690fd8db2 100644 --- a/web/core/modules/serialization/src/Normalizer/TypedDataNormalizer.php +++ b/web/core/modules/serialization/src/Normalizer/TypedDataNormalizer.php @@ -18,7 +18,13 @@ class TypedDataNormalizer extends NormalizerBase { * {@inheritdoc} */ public function normalize($object, $format = NULL, array $context = []) { - return $object->getValue(); + $this->addCacheableDependency($context, $object); + $value = $object->getValue(); + // Support for stringable value objects: avoid numerous custom normalizers. + if (is_object($value) && method_exists($value, '__toString')) { + $value = (string) $value; + } + return $value; } }