From d4e48e0f265b6d30706c91d34f105fa8286e2597 Mon Sep 17 00:00:00 2001
From: Francois Suter <sutfra@gmail.com>
Date: Mon, 4 Jul 2022 16:39:26 +0200
Subject: [PATCH] [BUGFIX] Enforce string type for custom permission key

Make sure that item key for custom permission options are cast
to string before being parsed for invalid characters.

Resolves: #97852
Releases: main, 11.5
Change-Id: Id8ff1997b875171316784d00bdc7bf72702d7645
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/75024
Tested-by: core-ci <typo3@b13.com>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Benni Mack <benni@typo3.org>
---
 typo3/sysext/core/Classes/Hooks/TcaItemsProcessorFunctions.php | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/typo3/sysext/core/Classes/Hooks/TcaItemsProcessorFunctions.php b/typo3/sysext/core/Classes/Hooks/TcaItemsProcessorFunctions.php
index 51bd9bb45884..f6bcc43b3588 100644
--- a/typo3/sysext/core/Classes/Hooks/TcaItemsProcessorFunctions.php
+++ b/typo3/sysext/core/Classes/Hooks/TcaItemsProcessorFunctions.php
@@ -190,7 +190,7 @@ class TcaItemsProcessorFunctions
                 }
                 $fieldDefinition['items'][] = [
                     $languageService->sL($itemConfig[0] ?? ''),
-                    $customOptionsKey . ':' . preg_replace('/[:|,]/', '', $itemKey),
+                    $customOptionsKey . ':' . preg_replace('/[:|,]/', '', (string)$itemKey),
                     $icon,
                     null,
                     $helpText,
-- 
GitLab