[BUGFIX] Avoid renumbering array keys on writing configuration 44/55944/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:49:22 +0000 (16:49 +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/55944
Tested-by: TYPO3com <no-reply@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 071ffa5..4ba9e73 100644 (file)
@@ -322,9 +322,7 @@ class ConfigurationManager
             $localConfigurationFile,
             '<?php' . LF .
                 'return ' .
-                    ArrayUtility::arrayExport(
-                        ArrayUtility::renumberKeysToAvoidLeapsIfKeysAreAllNumeric($configuration)
-                    ) .
+                    ArrayUtility::arrayExport($configuration) .
                 ';' . LF,
             true
         );