diff --git a/file/lib/util/ChatUtil.class.php b/file/lib/util/ChatUtil.class.php
index 243f346..370a24a 100644
--- a/file/lib/util/ChatUtil.class.php
+++ b/file/lib/util/ChatUtil.class.php
@@ -76,19 +76,19 @@ public static function /* int */ getRandomNumber() {
* @return string
*/
public static function gradient($string, $start, $end) {
- $string = self::str_split($string);
- if (count($string) === 0) return '';
+ if (($length = \wcf\util\StringUtil::length($string)) === 0) return '';
if ($start === $end) {
return ''.\wcf\util\StringUtil::encodeHTML($string).'';
}
- $r = (int) ((($start >> 16 & 255) - ($end >> 16 & 255)) / (count($string) - 1));
- $g = (int) ((($start >> 8 & 255) - ($end >> 8 & 255)) / (count($string) - 1));
- $b = (int) ((($start & 255) - ($end & 255)) / (count($string) - 1));
+ $r = (int) ((($start >> 16 & 255) - ($end >> 16 & 255)) / ($length - 1));
+ $g = (int) ((($start >> 8 & 255) - ($end >> 8 & 255)) / ($length - 1));
+ $b = (int) ((($start & 255) - ($end & 255)) / ($length - 1));
$result = '';
- for ($i = 0, $max = count($string); $i < $max; $i++) {
+ $string = self::str_split($string);
+ for ($i = 0; $i < $length; $i++) {
$result .= ''.\wcf\util\StringUtil::encodeHTML($string[$i]).'';
}