3
0
mirror of https://github.com/pragma-/pbot.git synced 2024-11-25 21:39:27 +01:00

Refactor UTF-8 fix

This commit is contained in:
Pragmatic Software 2023-03-12 18:28:50 -07:00
parent b9a89e10d6
commit 3ada433527
2 changed files with 4 additions and 8 deletions

View File

@ -309,18 +309,14 @@ sub execute {
my $result = ""; my $result = "";
my $got_result = 0; my $got_result = 0;
while (my $line = decode('UTF-8', <$output>)) { while (my $line = decode('UTF-8', <$output>, sub { sprintf '\\\\x%02X', shift })) {
$line =~ s/[\r\n]+$//; $line =~ s/[\r\n]+$//;
last if $line =~ /^result:end$/; last if $line =~ /^result:end$/;
if ($line =~ /^result:/) { if ($line =~ /^result:/) {
$line =~ s/^result://; $line =~ s/^result://;
# use JSON::XS->new->decode() for non-utf8 decoding
$line = encode('UTF-8', $line); my $compile_out = JSON::XS->new->decode($line);
my $octets = decode('UTF-8', $line, sub { sprintf '\\\\x%02X', shift });
$line = encode('UTF-8', $octets, Encode::FB_CROAK);
my $compile_out = decode_json($line);
$result .= "$compile_out->{result}\n"; $result .= "$compile_out->{result}\n";
$got_result = 1; $got_result = 1;
next; next;

View File

@ -25,7 +25,7 @@ use PBot::Imports;
# These are set by the /misc/update_version script # These are set by the /misc/update_version script
use constant { use constant {
BUILD_NAME => "PBot", BUILD_NAME => "PBot",
BUILD_REVISION => 4628, BUILD_REVISION => 4629,
BUILD_DATE => "2023-03-12", BUILD_DATE => "2023-03-12",
}; };