[BUGFIX] Properly (un)serialize ReflectionService
The ReflectionService usually doesn't get serialized by users directly but since Extbase has an unclean dependency chain, the serialization of the ReflectionService is triggered in user land code when serializing a LazyObjectStorage e.g. Since it's no problem to implement a clean serialization and unserialization of the ReflectionService it is implemented with this patch and will no longer cause any troubles. There is just one thing to mention. The ReflectionService usually comes with a cache which cannot be restored during wakeup of the serialized service. It's unlikely but it's possible that the absense of the cache can cause a performance hit. Releases: master, 9.5 Resolves: #91404 Change-Id: I8c64968f0f329528c9f578ba0ef76437ada40ac0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/64494 Tested-by:Susanne Moog <look@susi.dev> Tested-by:
Benjamin Franzke <bfr@qbus.de> Tested-by:
TYPO3com <noreply@typo3.com> Reviewed-by: Susanne Moog <look...
Showing
- typo3/sysext/extbase/Classes/Reflection/ReflectionService.php 34 additions, 10 deletions...3/sysext/extbase/Classes/Reflection/ReflectionService.php
- typo3/sysext/extbase/Tests/Unit/Reflection/Fixture/InsecureSerializedReflectionService.txt 1 addition, 0 deletions...eflection/Fixture/InsecureSerializedReflectionService.txt
- typo3/sysext/extbase/Tests/Unit/Reflection/ReflectionServiceTest.php 57 additions, 0 deletions...t/extbase/Tests/Unit/Reflection/ReflectionServiceTest.php
Please register or sign in to comment