Bug #101925
closedCheck if index exists in stdWrap.listNum to avoid PHP warnings
100%
Description
Let's assume we want to use the 2nd image stored in a page's media field as a background image. We can do something like this in TypoScript to generate some inline CSS:
10 = IMG_RESOURCE 10 { file.import.data = levelmedia:-1, slide file.import.listNum = 1 file.treatIdAsReference = 1 stdWrap.wrap = body {background: url(|) no-repeat; background-size: cover; background-attachment: fixed;} }
But if there is no 2nd image, a PHP warning is generated, which can flood your sys_log over time:
Core: Error handler (FE): PHP Warning: Undefined array key 1 in /typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 2592
The listNum()
method in ContentObjectRenderer currently just blindly returns the specified/calculated index:
return $temp[$index];
I think it would be cleaner and better to do something like this (same behaviour as if the exploded content was empty):
return $temp[$index] ?? '';
Updated by Michael Stopp 12 months ago
- Subject changed from Check if index existis in stdWrap.listNum to avoid PHP warnings to Check if index exists in stdWrap.listNum to avoid PHP warnings
Updated by Gerrit Code Review 12 months ago
- Status changed from New to Under Review
Patch set 1 for branch main of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/81027
Updated by Christian Kuhn 12 months ago
- Related to Task #101934: Cleanup code for ContentObjectRenderer::listNum and add tests added
Updated by Gerrit Code Review 12 months ago
Patch set 1 for branch 12.4 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/81044
Updated by Gerrit Code Review 12 months ago
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/+/81045
Updated by Georg Ringer 12 months ago
- Status changed from Under Review to Resolved
- % Done changed from 0 to 100
Applied in changeset 90d885c7782f255028148e90509e4686685ef02f.