From d00b800261851c1a1df0d95533982c414659f67c Mon Sep 17 00:00:00 2001 From: Thomas Hohn <thomas@hohn.dk> Date: Tue, 24 Jan 2023 18:35:28 +0100 Subject: [PATCH] [BUGFIX] Fix PHP 8 warning in ContentObjectRenderer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Since $conf['externalBlocks.'][$tagName . '.'] can be null, added a null coalescing check to ensure that $cfg contains a valid value. Resolves: #99706 Releases: main, 11.5 Change-Id: Ia80bc50504e27eb0155232e1f1eb956f9b88ac79 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/77576 Reviewed-by: Stefan Bürk <stefan@buerk.tech> Tested-by: core-ci <typo3@b13.com> Tested-by: Stefan Bürk <stefan@buerk.tech> --- .../Classes/ContentObject/ContentObjectRenderer.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php b/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php index 82eb0261a50b..16fb86fdd44b 100644 --- a/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php +++ b/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php @@ -3448,7 +3448,10 @@ class ContentObjectRenderer implements LoggerAwareInterface if ($k % 2) { // font: $tagName = strtolower($htmlParser->getFirstTagName($v)); - $cfg = $conf['externalBlocks.'][$tagName . '.']; + $cfg = $conf['externalBlocks.'][$tagName . '.'] ?? []; + if ($cfg === []) { + continue; + } if (($cfg['stripNLprev'] ?? false) || ($cfg['stripNL'] ?? false)) { $parts[$k - 1] = preg_replace('/' . CR . '?' . LF . '[ ]*$/', '', $parts[$k - 1]); } @@ -3464,7 +3467,10 @@ class ContentObjectRenderer implements LoggerAwareInterface if ($k % 2) { $tag = $htmlParser->getFirstTag($v); $tagName = strtolower($htmlParser->getFirstTagName($v)); - $cfg = $conf['externalBlocks.'][$tagName . '.']; + $cfg = $conf['externalBlocks.'][$tagName . '.'] ?? []; + if ($cfg === []) { + continue; + } if ($cfg['callRecursive'] ?? false) { $parts[$k] = $this->parseFunc($htmlParser->removeFirstAndLastTag($v), $conf); if (!($cfg['callRecursive.']['dontWrapSelf'] ?? false)) { -- GitLab