[BUGFIX] DataMapProcessor::synchronizeInlineRelations removes entities
In case RelationHandler::readForeignField() is called with invalid UID values for a parent record (e.g. zero, or non-numeric values), all records might be selected if the database default value for a parent pointer field is set to zero instead of NULL. Besides that DataMapProcessor::synchronizeInlineRelations() uses the mentioned RelationHandler method to resolve suggested and actually persisted relations. The processing is adjusted to avoid invoking RelationHandler using non-numeric parent pointer values. Resolves: #81915 Releases: master, 8.7 Change-Id: I108501c69c9cdb732bb88526830f0f73f2d680af Reviewed-on: https://review.typo3.org/53544 Tested-by:TYPO3com <no-reply@typo3.com> Reviewed-by:
Susanne Moog <susanne.moog@typo3.org> Tested-by:
Susanne Moog <susanne.moog@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Oliver Hader <oliver.hader@typo3.org>
Showing
- typo3/sysext/core/Classes/DataHandling/Localization/DataMapProcessor.php 85 additions, 33 deletions...re/Classes/DataHandling/Localization/DataMapProcessor.php
- typo3/sysext/core/Classes/Database/RelationHandler.php 6 additions, 0 deletionstypo3/sysext/core/Classes/Database/RelationHandler.php
- typo3/sysext/core/Tests/Functional/DataHandling/IRRE/ForeignField/AbstractActionTestCase.php 23 additions, 0 deletions...DataHandling/IRRE/ForeignField/AbstractActionTestCase.php
- typo3/sysext/core/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/ActionTest.php 16 additions, 0 deletions...onal/DataHandling/IRRE/ForeignField/Modify/ActionTest.php
- typo3/sysext/core/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/DataSet/localizeChildrenHStandaloneChildrenWAllChildrenSelectNLanguageSynchronization.csv 31 additions, 0 deletions...oneChildrenWAllChildrenSelectNLanguageSynchronization.csv
Please register or sign in to comment