diff --git a/typo3/sysext/extbase/Classes/Persistence/Generic/Mapper/DataMapper.php b/typo3/sysext/extbase/Classes/Persistence/Generic/Mapper/DataMapper.php
index 79968dfb7f7a039cf630421e074f8ab29424d1ba..ed281be696abc57516f4cc4436a3984930273ad5 100644
--- a/typo3/sysext/extbase/Classes/Persistence/Generic/Mapper/DataMapper.php
+++ b/typo3/sysext/extbase/Classes/Persistence/Generic/Mapper/DataMapper.php
@@ -283,15 +283,14 @@ class DataMapper
                             $this->fetchRelated($object, $propertyName, $row[$columnName])
                         );
                         break;
-                    case is_subclass_of($propertyType, \DateTimeInterface::class):
+                    default:
+                        if (is_subclass_of($propertyType, \DateTimeInterface::class)) {
                             $propertyValue = $this->mapDateTime(
                                 $row[$columnName],
                                 $columnMap->getDateTimeStorageFormat(),
                                 $propertyType
                             );
-                        break;
-                    default:
-                        if (TypeHandlingUtility::isCoreType($propertyType)) {
+                        } elseif (TypeHandlingUtility::isCoreType($propertyType)) {
                             $propertyValue = $this->mapCoreType($propertyType, $row[$columnName]);
                         } else {
                             $propertyValue = $this->mapObjectToClassProperty(