|
@ -2257,19 +2257,11 @@ function ordutf8($string, &$offset) { |
|
|
return $code; |
|
|
return $code; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// Limit Non_Spacing_Mark and Enclosing_Mark characters |
|
|
function strip_combining_chars($str) { |
|
|
function strip_combining_chars($str) { |
|
|
$chars = preg_split('//u', $str, -1, PREG_SPLIT_NO_EMPTY); |
|
|
global $config; |
|
|
$str = ''; |
|
|
$limit = strval($config['max_combining_chars']+1); |
|
|
foreach ($chars as $char) { |
|
|
return preg_replace('/(\p{Me}|\p{Mn}){'.$limit.',}/u','', $str); |
|
|
$o = 0; |
|
|
|
|
|
$ord = ordutf8($char, $o); |
|
|
|
|
|
|
|
|
|
|
|
if ( ($ord >= 768 && $ord <= 879) || ($ord >= 1536 && $ord <= 1791) || ($ord >= 3655 && $ord <= 3659) || ($ord >= 7616 && $ord <= 7679) || ($ord >= 8400 && $ord <= 8447) || ($ord >= 65056 && $ord <= 65071)) |
|
|
|
|
|
continue; |
|
|
|
|
|
|
|
|
|
|
|
$str .= $char; |
|
|
|
|
|
} |
|
|
|
|
|
return $str; |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
function buildThread($id, $return = false, $mod = false) { |
|
|
function buildThread($id, $return = false, $mod = false) { |
|
|