From 8b3737353aec1a70c35938b21226cb4955fcd5b0 Mon Sep 17 00:00:00 2001 From: Georg Ringer <georg.ringer@gmail.com> Date: Thu, 8 Oct 2020 19:32:18 +0200 Subject: [PATCH] [TASK] Remove empty array from site configuration before persisting Having empty array like `routes: { }` make it hard to lint the site configuration yaml files. To have a cleaner state, those empty arrays are removed before they are persisted. Resolves: #92524 Releases: master, 10.4 Change-Id: Id4f9cae7deb5903bf735cc1076731a5105b494ec Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66091 Tested-by: TYPO3com <noreply@typo3.com> Tested-by: Benni Mack <benni@typo3.org> Tested-by: Josef Glatz <josefglatz@gmail.com> Tested-by: Markus Klein <markus.klein@typo3.org> Tested-by: Oliver Bartsch <bo@cedev.de> Tested-by: Georg Ringer <georg.ringer@gmail.com> Reviewed-by: Benni Mack <benni@typo3.org> Reviewed-by: Josef Glatz <josefglatz@gmail.com> Reviewed-by: Markus Klein <markus.klein@typo3.org> Reviewed-by: Oliver Bartsch <bo@cedev.de> Reviewed-by: Georg Ringer <georg.ringer@gmail.com> --- .../Classes/Controller/SiteConfigurationController.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/typo3/sysext/backend/Classes/Controller/SiteConfigurationController.php b/typo3/sysext/backend/Classes/Controller/SiteConfigurationController.php index d45590356894..54f706477480 100644 --- a/typo3/sysext/backend/Classes/Controller/SiteConfigurationController.php +++ b/typo3/sysext/backend/Classes/Controller/SiteConfigurationController.php @@ -556,6 +556,13 @@ class SiteConfigurationController } $newSysSiteData['languages'] = $validChildren; + // cleanup configuration + foreach ($newSysSiteData as $identifier => $value) { + if (is_array($value) && empty($value)) { + unset($newSysSiteData[$identifier]); + } + } + return $newSysSiteData; } -- GitLab