From 35b531b81673833fdcc91a7234200f84cd556f90 Mon Sep 17 00:00:00 2001 From: Priyadi Iman Nurcahyo <1102197+priyadi@users.noreply.github.com> Date: Tue, 25 Jun 2024 20:22:17 +0700 Subject: [PATCH] fix: missing catch on next() call (#80) --- src/Mapping/Implementation/MappingFactory.php | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/src/Mapping/Implementation/MappingFactory.php b/src/Mapping/Implementation/MappingFactory.php index 9f947c4..8f0ec61 100644 --- a/src/Mapping/Implementation/MappingFactory.php +++ b/src/Mapping/Implementation/MappingFactory.php @@ -149,11 +149,21 @@ class: get_class($transformer), } } - $supportedTransformation->next(); - } + try { + $supportedTransformation->next(); + } catch (InvalidClassException $e) { + $this->logger?->warning( + 'Transformer "{transformer}" has a mapping involving an invalid class "{class}", skipping mapping definition from this transformer.', + [ + 'transformer' => get_class($transformer), + 'class' => $e->getClass(), + ], + ); - // foreach ($supportedTransformation as $typeMapping) { - // } + // if the error happens here, we ignore + continue; + } + } } /**