Столкнулся с ошибкой сбора статистики при запуске stats.pl
получаемый текст ошибки
Code
Malformed UTF-8 character (UTF-16 surrogate 0xdb1d) in pattern match (m//) at (eval 124) line 3, <_GEN_0> line 841.
Malformed UTF-8 character (UTF-16 surrogate 0xdb1d) in pattern match (m//) at (eval 124) line 3, <_GEN_0> line 841.
Malformed UTF-8 character (UTF-16 surrogate 0xdb1d) in rindex at /home/hostsat/public_html/stats.clancs.ru/lib/PS/Game/halflife.pm line 249, <_GEN_0> line 841.
Malformed UTF-8 character (UTF-16 surrogate 0xdb1d) in rindex at /home/hostsat/public_html/stats.clancs.ru/lib/PS/Game/halflife.pm line 249, <_GEN_0> line 841.
Как решается проблема:
файл /lib/PS/Game/halflife.pm
находим
заменяем на
Code
use Encode qw(encode decode);
находим
Code
$event = Encode::decode('utf8',$event);
заменяем на
Code
$event = decode('UTF-8',$event); # HL logs are UTF-8 encoded
находим
Code
my $str = encode_utf8($plrstr);
заменяем на
Code
my $str = encode('UTF-8', $plrstr);
находим
Code
$msg = encode('utf8',$msg);
заменяем на
Code
$msg = encode('UTF-8', $msg);