[BUGFIX] Avoid renumbering array keys on writing configuration 36/55936/2
authorHelmut Hummel <typo3@helhum.io>
Wed, 28 Feb 2018 12:41:49 +0000 (13:41 +0100)
committerMarkus Klein <markus.klein@typo3.org>
Wed, 28 Feb 2018 15:33:15 +0000 (16:33 +0100)
Renumbering array keys, even if all keys are integer
is a destructive operation.
Doing so at least breaks our logging configuration,
which uses LogLevel constants as array keys and these constants
are defined as integer.

Therefore this pure visual optimization is removed
when writing LocalConfiguration.php

At a later point we might consider deprecating this
method, which at least has a wrong method name
(mentions "numeric", while it meanwhile uses "int" checks).
As this method performs a destructive operation,
its usefulness is limited.

Resolves: #82304
Releases: master, 8.7, 7.6
Change-Id: I8d252428f3e27379e4377d30af0fdfd5e5d8719d
Reviewed-on: https://review.typo3.org/55936
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Mathias Schreiber <mathias.schreiber@typo3.com>
Tested-by: Mathias Schreiber <mathias.schreiber@typo3.com>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
typo3/sysext/core/Classes/Configuration/ConfigurationManager.php

index d3ce278..c903158 100644 (file)
@@ -370,9 +370,7 @@ class ConfigurationManager
             $localConfigurationFile,
             '<?php' . LF .
                 'return ' .
-                    ArrayUtility::arrayExport(
-                        ArrayUtility::renumberKeysToAvoidLeapsIfKeysAreAllNumeric($configuration)
-                    ) .
+                    ArrayUtility::arrayExport($configuration) .
                 ';' . LF,
             true
         );