From 1d58ab080598becf7550527b62a018719ebb3ec5 Mon Sep 17 00:00:00 2001
From: Oliver Hader <oliver@typo3.org>
Date: Sun, 1 Mar 2015 14:36:27 +0100
Subject: [PATCH] [BUGFIX] Invalid back path of ImageViewHelper in TYPO3
 backend

If rendering an image in the TYPO3 backend, the regular case is
to prepend "../" to an URI with the assumption that the original
HTTP request was handled by typo3/backend.php.

For the page module for instance, the request points to
typo3/sysext/cms/layout/db_layout.php, thus the back path way
does not work anymore.

To overcome that behavior the absolute path shall be used
instead by determining TYPO3_SITE_PATH. For the case that
some custom processing relies on "../" this change might
be breaking.

Resolves: #65433
Releases: master, 6.2
Change-Id: I969f6a3bdd000b7efb7607e533d1117c8d363959
Reviewed-on: http://review.typo3.org/37407
Reviewed-by: Frans Saris <franssaris@gmail.com>
Reviewed-by: Markus Klein <klein.t3@reelworx.at>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
---
 typo3/sysext/extbase/Classes/Service/ImageService.php | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/typo3/sysext/extbase/Classes/Service/ImageService.php b/typo3/sysext/extbase/Classes/Service/ImageService.php
index d60861404e19..88583429c520 100644
--- a/typo3/sysext/extbase/Classes/Service/ImageService.php
+++ b/typo3/sysext/extbase/Classes/Service/ImageService.php
@@ -18,6 +18,7 @@ use TYPO3\CMS\Core\Resource\FileInterface;
 use TYPO3\CMS\Core\Resource\File;
 use TYPO3\CMS\Core\Resource\FileReference;
 use TYPO3\CMS\Core\Resource\ProcessedFile;
+use TYPO3\CMS\Core\Utility\GeneralUtility;
 use TYPO3\CMS\Core\Utility\MathUtility;
 
 /**
@@ -73,7 +74,7 @@ class ImageService implements \TYPO3\CMS\Core\SingletonInterface {
 		} elseif ($this->environmentService->isEnvironmentInFrontendMode()) {
 			$uriPrefix = $GLOBALS['TSFE']->absRefPrefix;
 		} else {
-			$uriPrefix = '../';
+			$uriPrefix = GeneralUtility::getIndpEnv('TYPO3_SITE_PATH');
 		}
 
 		return $uriPrefix . $imageUrl;
-- 
GitLab