[TASK] Remove converting pageNotFound_handling in bootstrap 32/49232/2
authorWouter Wolters <typo3@wouterwolters.nl>
Thu, 28 Jul 2016 07:55:29 +0000 (09:55 +0200)
committerBenni Mack <benni@typo3.org>
Thu, 28 Jul 2016 18:36:25 +0000 (20:36 +0200)
On every request the pageNotFound_handling is casted to a real
boolean if needed. This is not needed and we fix the code execution
to catch this case. We gain not much with this change but makes the
bootstrap smaller.

Resolves: #54555
Releases: master
Change-Id: I2289eb6812f1626af513d9ac1bdfe96d41360212
Reviewed-on: https://review.typo3.org/49232
Tested-by: Bamboo TYPO3com <info@typo3.com>
Reviewed-by: Mathias Schreiber <mathias.schreiber@wmdb.de>
Tested-by: Mathias Schreiber <mathias.schreiber@wmdb.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
typo3/sysext/core/Classes/Core/Bootstrap.php
typo3/sysext/frontend/Classes/Controller/TypoScriptFrontendController.php

index 0a5e49a..7e426b2 100644 (file)
@@ -403,7 +403,6 @@ class Bootstrap
             ->setCacheHashOptions()
             ->setDefaultTimezone()
             ->initializeL10nLocales()
-            ->convertPageNotFoundHandlingToBoolean()
             ->setMemoryLimit();
         if ($allowCaching) {
             $this->ensureClassLoadingInformationExists();
@@ -621,21 +620,6 @@ class Bootstrap
         return $this;
     }
 
-    /**
-     * Convert type of "pageNotFound_handling" setting in case it was written as a
-     * string (e.g. if edited in Install Tool)
-     *
-     * @TODO : Remove, if the Install Tool handles such data types correctly
-     * @return Bootstrap
-     */
-    protected function convertPageNotFoundHandlingToBoolean()
-    {
-        if (!strcasecmp($GLOBALS['TYPO3_CONF_VARS']['FE']['pageNotFound_handling'], 'TRUE')) {
-            $GLOBALS['TYPO3_CONF_VARS']['FE']['pageNotFound_handling'] = true;
-        }
-        return $this;
-    }
-
     /**
      * Configure and set up exception and error handling
      *
index e00ee4c..ea1e7fa 100644 (file)
@@ -1999,7 +1999,7 @@ class TypoScriptFrontendController
         }
         // Create response:
         // Simply boolean; Just shows TYPO3 error page with reason:
-        if (gettype($code) == 'boolean' || (string)$code === '1') {
+        if (strtolower($code) === 'true' || (string)$code === '1' || gettype($code) === 'boolean') {
             $title = 'Page Not Found';
             $message = 'The page did not exist or was inaccessible.' . ($reason ? ' Reason: ' . htmlspecialchars($reason) : '');
             $messagePage = GeneralUtility::makeInstance(ErrorpageMessage::class, $message, $title);