[BUGFIX] FLUIDTEMPLATE - Serialization of 'Closure' is not allowed
authorOliver Hader <oliver@typo3.org>
Tue, 5 Jun 2012 21:44:57 +0000 (23:44 +0200)
committerOliver Hader <oliver@typo3.org>
Tue, 3 Jul 2012 20:20:51 +0000 (22:20 +0200)
commit7e63fe167e2e60be4f487bdd078dd1bcd381a6e4
tree3631ea712c899a24587bcc5a729f3b526653c77f
parent8771caa134d59ade3fd7738518356750b0cc3f0e
[BUGFIX] FLUIDTEMPLATE - Serialization of 'Closure' is not allowed

The Fluid TemplateCompiler uses closures to store a cached
variant of the accordant Fluid node. Several calls in Fluid
use serialize() and also will process those closures, which
will end up in a PHP fatal error.

The most obvious part is the object manager which will then
try to serialize all objects - including closures - that are
available in the object container.

The problem can be circumvented by using accordant magic PHP
methods like __sleep() and __wakeup() to ignore those properties.

Change-Id: I70e78a09b2a118cc26f099063743c530f0addc72
Fixes: #32295
Related: #36820
Releases: 6.0, 4.7, 4.6
typo3/sysext/extbase/Classes/Object/ObjectManager.php