From: Tim Düsterhus Date: Tue, 10 Dec 2013 21:06:24 +0000 (+0100) Subject: Remove 4 byte utf-8 characters in MessageUtil::stripCrap() X-Git-Tag: 2.0.0~5^2 X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=fc3dccd17e0a59a6a8fdfa360219d2d3febea57f;p=GitHub%2FWoltLab%2FWCF.git Remove 4 byte utf-8 characters in MessageUtil::stripCrap() --- diff --git a/wcfsetup/install/files/lib/util/MessageUtil.class.php b/wcfsetup/install/files/lib/util/MessageUtil.class.php index 1b3b31aea7..04601f006a 100644 --- a/wcfsetup/install/files/lib/util/MessageUtil.class.php +++ b/wcfsetup/install/files/lib/util/MessageUtil.class.php @@ -32,8 +32,9 @@ class MessageUtil { // unify new lines $text = StringUtil::unifyNewlines($text); - // remove emoji (MySQL 5.1 does not support them) - $text = preg_replace('~\xF0\x9F[\x80-\xBF][\x80-\xBF]~', '', $text); + // remove 4 byte utf-8 characters as MySQL < 5.5 does not support them + // see http://stackoverflow.com/a/16902461/782822 + $text = $text = preg_replace('/[\xF0-\xF7].../s', '', $text); // remove control characters $text = preg_replace('~[\x00-\x08\x0B-\x1F\x7F]~', '', $text);