From 32a2cdc3344304a9877c956dc6c48c69dcb22460 Mon Sep 17 00:00:00 2001
From: Daniel Siepmann <daniel.siepmann@typo3.org>
Date: Wed, 17 May 2023 13:25:01 +0200
Subject: [PATCH] [BUGFIX] Render image processing results in install tool

Some checks might return a message why images can't be generated.
Those checks didn't return success which prevents processing by
JavaScript, leading to endless "Loading" state within UI.
All responses now properly return success = true in order to be
processed by JavaScript.

Resolves: #100893
Releases: main, 12.4
Change-Id: I720893a0b01a26a7b77bdcb16c02295eed3ae595
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/79680
Tested-by: core-ci <typo3@b13.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
---
 .../Classes/Controller/EnvironmentController.php    | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/typo3/sysext/install/Classes/Controller/EnvironmentController.php b/typo3/sysext/install/Classes/Controller/EnvironmentController.php
index db0d4bc82c9d..90e21a358123 100644
--- a/typo3/sysext/install/Classes/Controller/EnvironmentController.php
+++ b/typo3/sysext/install/Classes/Controller/EnvironmentController.php
@@ -431,6 +431,7 @@ class EnvironmentController extends AbstractController
     {
         if (!$this->isImageMagickEnabledAndConfigured()) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [$this->imageMagickDisabledMessage()],
             ]);
         }
@@ -483,6 +484,7 @@ class EnvironmentController extends AbstractController
     {
         if (!$this->isImageMagickEnabledAndConfigured()) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [$this->imageMagickDisabledMessage()],
             ]);
         }
@@ -513,6 +515,7 @@ class EnvironmentController extends AbstractController
     {
         if (!$this->isImageMagickEnabledAndConfigured()) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [$this->imageMagickDisabledMessage()],
             ]);
         }
@@ -544,6 +547,7 @@ class EnvironmentController extends AbstractController
     {
         if (!$this->isImageMagickEnabledAndConfigured()) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [$this->imageMagickDisabledMessage()],
             ]);
         }
@@ -575,6 +579,7 @@ class EnvironmentController extends AbstractController
     {
         if (!$this->isImageMagickEnabledAndConfigured()) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [$this->imageMagickDisabledMessage()],
             ]);
         }
@@ -606,6 +611,7 @@ class EnvironmentController extends AbstractController
     {
         if (!$this->isImageMagickEnabledAndConfigured()) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [$this->imageMagickDisabledMessage()],
             ]);
         }
@@ -638,6 +644,7 @@ class EnvironmentController extends AbstractController
     {
         if (!$this->isImageMagickEnabledAndConfigured()) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [$this->imageMagickDisabledMessage()],
             ]);
         }
@@ -669,6 +676,7 @@ class EnvironmentController extends AbstractController
     {
         if (!$this->isImageMagickEnabledAndConfigured()) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [$this->imageMagickDisabledMessage()],
             ]);
         }
@@ -704,6 +712,7 @@ class EnvironmentController extends AbstractController
     {
         if (!$this->isImageMagickEnabledAndConfigured()) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [$this->imageMagickDisabledMessage()],
             ]);
         }
@@ -830,6 +839,7 @@ class EnvironmentController extends AbstractController
     {
         if (!$this->isImageMagickEnabledAndConfigured()) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [$this->imageMagickDisabledMessage()],
             ]);
         }
@@ -875,6 +885,7 @@ class EnvironmentController extends AbstractController
     {
         if (!$this->isImageMagickEnabledAndConfigured()) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [$this->imageMagickDisabledMessage()],
             ]);
         }
@@ -968,11 +979,13 @@ class EnvironmentController extends AbstractController
     {
         if (!$this->isImageMagickEnabledAndConfigured()) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [$this->imageMagickDisabledMessage()],
             ]);
         }
         if (!GeneralUtility::inList($GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext'], $inputFormat)) {
             return new JsonResponse([
+                'success' => true,
                 'status' => [
                     new FlashMessage(
                         'Handling format ' . $inputFormat . ' must be enabled in TYPO3_CONF_VARS[\'GFX\'][\'imagefile_ext\']',
-- 
GitLab