Bug #79101
closedStory #69617: FormEngine bugs
InvalidPointerFieldValueException needs to be caught
100%
Description
\TYPO3\CMS\Core\Configuration\FlexForm\FlexFormTools::getDataStructureIdentifierFromRecord
tries to resolve the data structure of a record from another record in the database. This is a common practice in TemplaVoilà for instance.
If the identifier is an empty string or 0 (zero), a InvalidPointerFieldValueException is thrown, which is the right thing to do in the mentioned method.
Problem is, that the Exception is not caught in \TYPO3\CMS\Core\Configuration\FlexForm\FlexFormTools::getDataStructureIdentifier
.
The exception says, the problem is most likely a wrong configured TCA, which is not right if there is just no relation (yet) to a datastructure record. Thus, the exception needs to be handled properly during further execution.
Usual use case:
During the localization of a content element, the overlay usually does not get the same identifier value as its parent, thus the whole localization fails.