Bug #65576
closedmergeWithExistingConfiguration() fails for some extension configs.
100%
Description
I ran into this error:
PHP Catchable fatal error: Argument 1 passed to TYPO3\CMS\Core\Utility\ArrayUtility::flatten() must be of the type array, boolean given, called in /var/www/typo3_src/typo3_src-6.2.9/typo3/sysext/extensionmanager/Classes/Domain/Repository/ConfigurationItemRepository.php on line 174 and defined in /var/www/typo3_src/typo3_src-6.2.9/typo3/sysext/core/Classes/Utility/ArrayUtility.php on line 383```
After short googling, this error seems somehow related to this bug: https://forge.typo3.org/issues/40864, which was resolved in summer 2012: https://review.typo3.org/#/c/14548/
However, unserialize might not throw an exception but just return false or something else (according to http://php.net/manual/en/function.unserialize.php#refsect1-function.unserialize-returnvalues the return value is mixed and can be a boolean, integer, float, string, array or object).
So I suggest to add another line to the try block of ConfigurationItemRepository.php::mergeWithExistingConfiguration():
assert(is_array($currentExtensionConfig));
Unfortunately, I can't provide the offending extension configuration, because the problem disappeared after (dirty) patching the core.