[BUGFIX] Do not race tree node loading
When (de-)mounting pages in the page tree, always two requests are sent to the server that fetch the tree data: * when the `mountPointPath` path property is changed as it's a state property * explicitly after changing said property Especially when de-mounting a page, this tends to race conditions, as the mount state is additionally stored in the backend user's UC that needs to get unset as well. This bugfix now changes the handling when the state property, that triggers a re-rendering of the tree component, is updated. The de-mounting process now unsets the backend user's UC first and then changes the property to make sure that 1. the state is updated once the configuration is flushed 2. the tree nodes are fetched only once In the mounting process, the UC is correctly updated first. However, the state was updated and then the nodes were reloaded explicitly. The latter is not required at all. Resolves: #103185 Releases: main, 12.4 Change-Id: I7a06852c6af40e1a41691a7cc7acd41db4f84adc Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83126 Tested-by:core-ci <typo3@b13.com> Reviewed-by:
Benjamin Kott <benjamin.kott@outlook.com> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Benjamin Kott <benjamin.kott@outlook.com> Tested-by:
Garvin Hicking <gh@faktor-e.de>
Showing
- Build/Sources/TypeScript/backend/tree/page-browser.ts 1 addition, 3 deletionsBuild/Sources/TypeScript/backend/tree/page-browser.ts
- Build/Sources/TypeScript/backend/tree/page-tree-element.ts 1 addition, 3 deletionsBuild/Sources/TypeScript/backend/tree/page-tree-element.ts
- typo3/sysext/backend/Resources/Public/JavaScript/tree/page-browser.js 2 additions, 2 deletions.../backend/Resources/Public/JavaScript/tree/page-browser.js
- typo3/sysext/backend/Resources/Public/JavaScript/tree/page-tree-element.js 2 additions, 2 deletions...end/Resources/Public/JavaScript/tree/page-tree-element.js
Please register or sign in to comment