From 2ffc33d32021a3eac6fe3e6dc96a79f5dab58cd5 Mon Sep 17 00:00:00 2001 From: chojnis Date: Wed, 20 Aug 2025 00:10:21 +0200 Subject: [PATCH] fix: use JSON encoding for module params to avoid separator conflicts --- controllers/front/esi.php | 2 +- litespeedcache.php | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/controllers/front/esi.php b/controllers/front/esi.php index 96c203b..4afd440 100644 --- a/controllers/front/esi.php +++ b/controllers/front/esi.php @@ -179,7 +179,7 @@ private function handleModuleVariables(&$params, $item){ if(($mp=$item->getParam('mp')) && ($tas = $item->getConf()->getTemplateArgs())){ $tas1 = explode(',', $tas); - $mp1 = explode(',', $mp); + $mp1 = json_decode($mp, true); $i=0; foreach($tas1 as $mv){ $mvs = explode('.', trim($mv)); diff --git a/litespeedcache.php b/litespeedcache.php index 4c8064f..97e573a 100644 --- a/litespeedcache.php +++ b/litespeedcache.php @@ -749,7 +749,7 @@ public static function injectRenderWidget($module, $hook_name, $params=false) $mp = self::getModuleParams($params, $conf->getTemplateArgs()); if(!empty($mp)){ - $esiParam['mp']= implode(",", $mp); + $esiParam['mp'] = json_encode($mp, JSON_UNESCAPED_UNICODE); } return $lsc->registerEsiMarker($esiParam, $conf); @@ -778,7 +778,7 @@ public static function injectCallHook($module, $method, $params=false) $mp = self::getModuleParams($params, $conf->getTemplateArgs()); if(!empty($mp)){ - $esiParam['mp']= implode(",", $mp); + $esiParam['mp'] = json_encode($mp, JSON_UNESCAPED_UNICODE); } return $lsc->registerEsiMarker($esiParam, $conf);