[BUGFIX] Avoid race conditions in pagetree contextmenu actions
All pagetree actions that use the "RecordCommit" endpoint (tce_db) (which is loaded in to the main list_frame) need to avoid requesting an explicit and too early page tree update from the server, as the page data may not have been updated at that point. The pagetree refresh actually is and needs to be triggered by an immediate action pushed by the RecordCommit endpoint. (in the list frame via <typo3-immediate-action> element) An early-refresh call – prior to the persistence of the record action – causes stale data to be fetched and displayed when that request ends up to be processed after the record commit request (that is the "race" that causes this to only happen sometimes). Example: Page icon sometimes doesn't change on deactivation. Affected page tree actions are: * disable/enable page * hide/show in menu * past into/after Note that these actions should ideally be migrated to AjaxDataHandler. Once that's done, the pagetree refresh can be added back. Resolves: #94393 Resolves: #95499 Releases: main, 11.5 Change-Id: I4e4059da78cf5b5bfebc5d67aacc89332a67d750 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/74224 Tested-by:Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
Showing
Please register or sign in to comment