From ccd826f63a7a4c7e442fab8a70d9c4c84808b417 Mon Sep 17 00:00:00 2001 From: Mario Date: Tue, 11 Oct 2022 18:29:06 +0000 Subject: Revert "update composer libs" This reverts commit 5e5f0aa955d86743a14531bed98501b59140ab1f. --- vendor/sabre/vobject/lib/StringUtil.php | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'vendor/sabre/vobject/lib/StringUtil.php') diff --git a/vendor/sabre/vobject/lib/StringUtil.php b/vendor/sabre/vobject/lib/StringUtil.php index b04539e4a..2333d6ab9 100644 --- a/vendor/sabre/vobject/lib/StringUtil.php +++ b/vendor/sabre/vobject/lib/StringUtil.php @@ -40,11 +40,23 @@ class StringUtil */ public static function convertToUTF8($str) { - if (!mb_check_encoding($str, 'UTF-8') && mb_check_encoding($str, 'ISO-8859-1')) { - $str = mb_convert_encoding($str, 'UTF-8', 'ISO-8859-1'); + $encoding = mb_detect_encoding($str, ['UTF-8', 'ISO-8859-1', 'WINDOWS-1252'], true); + + switch ($encoding) { + case 'ISO-8859-1': + $newStr = utf8_encode($str); + break; + /* Unreachable code. Not sure yet how we can improve this + * situation. + case 'WINDOWS-1252' : + $newStr = iconv('cp1252', 'UTF-8', $str); + break; + */ + default: + $newStr = $str; } // Removing any control characters - return preg_replace('%(?:[\x00-\x08\x0B-\x0C\x0E-\x1F\x7F])%', '', $str); + return preg_replace('%(?:[\x00-\x08\x0B-\x0C\x0E-\x1F\x7F])%', '', $newStr); } } -- cgit v1.2.3