From 4dead4b53e2e91c26a820572e2fe77cfa17a5bff Mon Sep 17 00:00:00 2001 From: Marco Huber <mail@marco-huber.de> Date: Mon, 22 Aug 2016 13:49:34 +0200 Subject: [PATCH] [BUGFIX] Fix source collection for GIFBUILDER MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit If the file resource is a GIFBUILDER object, the dimension is set in the properties XY, maxWidth or maxHeight. Change-Id: Ic931760a966e6647042bca976c48e7bbaabdbb5a Resolves: #77577 Releases: master, 8.7 Reviewed-on: https://review.typo3.org/49537 Tested-by: TYPO3com <no-reply@typo3.com> Reviewed-by: Åukasz UznaÅ„ski <l.uznanski@macopedia.pl> Reviewed-by: Tomas Norre Mikkelsen <tomasnorre@gmail.com> Reviewed-by: Benni Mack <benni@typo3.org> Tested-by: Benni Mack <benni@typo3.org> Tested-by: Susanne Moog <susanne.moog@typo3.org> --- .../Classes/ContentObject/ContentObjectRenderer.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php b/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php index 1466524cc6e7..628b0853500c 100644 --- a/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php +++ b/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php @@ -1171,7 +1171,7 @@ class ContentObjectRenderer } else { $pixelDensity = 1; } - $dimensionKeys = ['width', 'height', 'maxW', 'minW', 'maxH', 'minH']; + $dimensionKeys = ['width', 'height', 'maxW', 'minW', 'maxH', 'minH', 'maxWidth', 'maxHeight', 'XY']; foreach ($dimensionKeys as $dimensionKey) { $dimension = $this->stdWrap($sourceConfiguration[$dimensionKey], $sourceConfiguration[$dimensionKey . '.']); if (!$dimension) { @@ -1184,6 +1184,12 @@ class ContentObjectRenderer if ($dimensionParts[1]) { $dimension .= $dimensionParts[1]; } + } elseif ($dimensionKey === 'XY') { + $dimensionParts = GeneralUtility::intExplode(',', $dimension, false, 2); + $dimension = $dimensionParts[0] * $pixelDensity; + if ($dimensionParts[1]) { + $dimension .= ',' . $dimensionParts[1] * $pixelDensity; + } } else { $dimension = (int)$dimension * $pixelDensity; } -- GitLab