Bug #103122
closedFileLinkHandler: false return value not taken into account
0%
Description
With the latest security patch version 11.5.35 the following lines where added to "\TYPO3\CMS\Recordlist\LinkHandler\FileLinkHandler::render()":
if ($selectedFolder->getStorage()->isFallbackStorage()) {
$selectedFolder = null;
}
https://github.com/TYPO3-CMS/recordlist/compare/v11.5.34...v11.5.35#diff-606331e26a505d19f3d851b0ac8c71433f861a2074c9e31b5077088e7d8e69e1
The variable "$selectedFolder" can be "false", because the previous line is "$selectedFolder = $this->getSelectedFolder($this->expandFolder);" and the return value of "getSelectedFolder()" can be a folder object or "false". The "false" return value is not taken into account in the newly added code, which results in an exception.
Updated by Gernot Leitgab 6 months ago
Possible solution would be:
if ($selectedFolder === false || $selectedFolder->getStorage()->isFallbackStorage()) {
$selectedFolder = null;
}
Updated by Gerrit Code Review 6 months ago
- Status changed from New to Under Review
Patch set 1 for branch 11.5 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/82999
Updated by Gerrit Code Review 6 months ago
Patch set 2 for branch 11.5 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/82999
Updated by Gerrit Code Review 6 months ago
Patch set 3 for branch 11.5 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/82999
Updated by Markus Klein 6 months ago
- Is duplicate of Bug #103116: Oops, an error occurred! Call to a member function getStorage() on bool added
Updated by Benjamin Franzke 6 months ago
Hi Gernot,
The code in v11 is wrong and needs to be updated. Thanks for the report.
One question: Did you actually run into the exception in v11, or did you face the error in an ELTS instance and noticed that the coding mistake is available in v11 as well?
(I'm asking because I couldn't reproduce in v11)
Thanks, Benjamin
Updated by Benjamin Franzke 6 months ago
nevermind, found it: getSelectedFolder()
return false if backend user has no "default" upload folder, which is the case when all storages are marked non-writable. With that the error is actually reproducible in v11 when trying to create a new file link.
Updated by Gerrit Code Review 6 months ago
Patch set 4 for branch 11.5 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/82999
Updated by Andreas Fernandez 6 months ago
- Status changed from Under Review to Resolved
Applied in changeset de0f48a7099fb320c50fd4635e11c1e4015690d9.