diff --git a/lib/filter/filter.class.php b/lib/filter/filter.class.php index f4e9980630..94c9468e92 100644 --- a/lib/filter/filter.class.php +++ b/lib/filter/filter.class.php @@ -100,11 +100,22 @@ class fixer extends baseFixer * @access public * @return object */ - public function filterEmoji($value){ - $value = preg_replace_callback('/./u', function (array $match) + public function filterEmoji($value) + { + if(is_object($value) or is_array($value)) { - return strlen($match[0]) >= 4 ? '' : $match[0]; - }, $value); + foreach($value as $subValue) + { + $subValue = $this->filterEmoji($subValue); + } + } + else + { + $value = preg_replace_callback('/./u', function (array $match) + { + return strlen($match[0]) >= 4 ? '' : $match[0]; + }, $value); + } return $value; }