diff --git a/typo3/sysext/backend/Classes/Form/Utility/FormEngineUtility.php b/typo3/sysext/backend/Classes/Form/Utility/FormEngineUtility.php index bd962e30501308607339465f2af7bfb588691091..c18586f89c6233070226cf9c02a654d8626842a9 100644 --- a/typo3/sysext/backend/Classes/Form/Utility/FormEngineUtility.php +++ b/typo3/sysext/backend/Classes/Form/Utility/FormEngineUtility.php @@ -17,6 +17,7 @@ namespace TYPO3\CMS\Backend\Form\Utility; use TYPO3\CMS\Backend\Utility\BackendUtility; use TYPO3\CMS\Core\Cache\CacheManager; +use TYPO3\CMS\Core\Core\Environment; use TYPO3\CMS\Core\Imaging\Icon; use TYPO3\CMS\Core\Imaging\IconFactory; use TYPO3\CMS\Core\Utility\ArrayUtility; @@ -130,8 +131,12 @@ class FormEngineUtility public static function getIconHtml($icon, $alt = '', $title = '') { $icon = (string)$icon; - $absoluteFilePath = GeneralUtility::getFileAbsFileName($icon); - if (!empty($absoluteFilePath) && is_file($absoluteFilePath)) { + if (PathUtility::isAbsolutePath($icon)) { + $absoluteFilePath = $icon; + } else { + $absoluteFilePath = GeneralUtility::getFileAbsFileName($icon); + } + if (!empty($absoluteFilePath) && (is_file($absoluteFilePath)) || is_file(Environment::getPublicPath() . $absoluteFilePath)) { return '<img' . ' loading="lazy" ' . ' src="' . htmlspecialchars(PathUtility::getAbsoluteWebPath($absoluteFilePath)) . '"'