summaryrefslogtreecommitdiff
path: root/cpan/Encode
diff options
context:
space:
mode:
authorSteve Hay <steve.m.hay@googlemail.com>2017-10-10 08:30:01 +0100
committerSteve Hay <steve.m.hay@googlemail.com>2017-10-10 08:30:01 +0100
commit0c541dc5633a341cf44b818014b58e7f8be532e9 (patch)
tree3449e40dd6af4faecccf0838c2d1a0261f87f8ea /cpan/Encode
parent1fd91301492e395c7dd0a0b9fb56395147df763b (diff)
downloadperl-0c541dc5633a341cf44b818014b58e7f8be532e9.tar.gz
Upgrade Encode from version 2.92 to 2.93
Diffstat (limited to 'cpan/Encode')
-rw-r--r--cpan/Encode/Encode.pm4
-rw-r--r--cpan/Encode/Makefile.PL4
-rw-r--r--cpan/Encode/encoding.pm16
-rw-r--r--cpan/Encode/lib/Encode/CN/HZ.pm4
-rw-r--r--cpan/Encode/lib/Encode/JP/JIS7.pm4
-rw-r--r--cpan/Encode/lib/Encode/MIME/Header.pm23
-rw-r--r--cpan/Encode/lib/Encode/MIME/Name.pm3
-rw-r--r--cpan/Encode/t/decode.t4
-rw-r--r--cpan/Encode/t/mime-header.t2
-rw-r--r--cpan/Encode/t/mime-name.t4
10 files changed, 33 insertions, 35 deletions
diff --git a/cpan/Encode/Encode.pm b/cpan/Encode/Encode.pm
index 5a27c5990c..035169c594 100644
--- a/cpan/Encode/Encode.pm
+++ b/cpan/Encode/Encode.pm
@@ -1,5 +1,5 @@
#
-# $Id: Encode.pm,v 2.92 2017/07/18 07:15:29 dankogai Exp dankogai $
+# $Id: Encode.pm,v 2.93 2017/10/06 22:21:33 dankogai Exp $
#
package Encode;
use strict;
@@ -7,7 +7,7 @@ use warnings;
use constant DEBUG => !!$ENV{PERL_ENCODE_DEBUG};
our $VERSION;
BEGIN {
- $VERSION = sprintf "%d.%02d", q$Revision: 2.92 $ =~ /(\d+)/g;
+ $VERSION = sprintf "%d.%02d", q$Revision: 2.93 $ =~ /(\d+)/g;
require XSLoader;
XSLoader::load( __PACKAGE__, $VERSION );
}
diff --git a/cpan/Encode/Makefile.PL b/cpan/Encode/Makefile.PL
index 8b801443d8..b52ad6c102 100644
--- a/cpan/Encode/Makefile.PL
+++ b/cpan/Encode/Makefile.PL
@@ -1,5 +1,5 @@
#
-# $Id: Makefile.PL,v 2.21 2017/07/18 07:15:29 dankogai Exp dankogai $
+# $Id: Makefile.PL,v 2.22 2017/10/06 22:21:53 dankogai Exp dankogai $
#
use 5.007003;
use strict;
@@ -20,7 +20,7 @@ if (!$ENV{PERL_CORE}) {
$gccver =~ s/\.//g; $gccver =~ s/ .*//;
$gccver .= "0" while length $gccver < 3;
$gccver = 0+$gccver;
- $ccflags .= ' -Werror=declaration-after-statement' if $gccver > 400;
+ $ccflags .= ' -Werror=declaration-after-statement' if $gccver > 412;
$ccflags .= ' -Wpointer-sign' if !$Config{d_cplusplus} and $gccver > 400;
$ccflags .= ' -fpermissive' if $Config{d_cplusplus};
}
diff --git a/cpan/Encode/encoding.pm b/cpan/Encode/encoding.pm
index 7cd9eb2949..1e82070afd 100644
--- a/cpan/Encode/encoding.pm
+++ b/cpan/Encode/encoding.pm
@@ -1,6 +1,6 @@
-# $Id: encoding.pm,v 2.20 2017/06/10 17:23:50 dankogai Exp $
+# $Id: encoding.pm,v 2.21 2017/10/06 22:21:53 dankogai Exp dankogai $
package encoding;
-our $VERSION = sprintf "%d.%02d", q$Revision: 2.20 $ =~ /(\d+)/g;
+our $VERSION = sprintf "%d.%02d", q$Revision: 2.21 $ =~ /(\d+)/g;
use Encode;
use strict;
@@ -176,7 +176,7 @@ sub import {
# implicitly 'use utf8'
require utf8; # to fetch $utf8::hint_bits;
$^H |= $utf8::hint_bits;
- eval {
+
require Filter::Util::Call;
Filter::Util::Call->import;
filter_add(
@@ -189,8 +189,6 @@ sub import {
$status;
}
);
- 1;
- } and DEBUG and warn "Filter installed";
}
defined ${^UNICODE} and ${^UNICODE} != 0 and return 1;
for my $h (qw(STDIN STDOUT)) {
@@ -200,20 +198,14 @@ sub import {
Carp::croak(
"encoding: Unknown encoding for $h, '$arg{$h}'");
}
- eval { binmode( $h, ":raw :encoding($arg{$h})" ) };
+ binmode( $h, ":raw :encoding($arg{$h})" );
}
else {
unless ( exists $arg{$h} ) {
- eval {
no warnings 'uninitialized';
binmode( $h, ":raw :encoding($name)" );
- };
}
}
- if ($@) {
- require Carp;
- Carp::croak($@);
- }
}
return 1; # I doubt if we need it, though
}
diff --git a/cpan/Encode/lib/Encode/CN/HZ.pm b/cpan/Encode/lib/Encode/CN/HZ.pm
index a0dc59d153..e444cb01c3 100644
--- a/cpan/Encode/lib/Encode/CN/HZ.pm
+++ b/cpan/Encode/lib/Encode/CN/HZ.pm
@@ -5,7 +5,7 @@ use warnings;
use utf8 ();
use vars qw($VERSION);
-$VERSION = do { my @r = ( q$Revision: 2.9 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r };
+$VERSION = do { my @r = ( q$Revision: 2.10 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r };
use Encode qw(:fallbacks);
@@ -156,7 +156,7 @@ sub encode($$;$) {
}
elsif ( $str =~ s/(.)// ) {
my $s = $1;
- my $tmp = $GB->encode( $s, $chk );
+ my $tmp = $GB->encode( $s, $chk || 0 );
last if !defined $tmp;
if ( length $tmp == 2 ) { # maybe a valid GB char (XXX)
if ($in_ascii) {
diff --git a/cpan/Encode/lib/Encode/JP/JIS7.pm b/cpan/Encode/lib/Encode/JP/JIS7.pm
index a0629a3690..6fc383c496 100644
--- a/cpan/Encode/lib/Encode/JP/JIS7.pm
+++ b/cpan/Encode/lib/Encode/JP/JIS7.pm
@@ -1,7 +1,7 @@
package Encode::JP::JIS7;
use strict;
use warnings;
-our $VERSION = do { my @r = ( q$Revision: 2.7 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r };
+our $VERSION = do { my @r = ( q$Revision: 2.8 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r };
use Encode qw(:fallbacks);
@@ -52,7 +52,7 @@ sub encode($$;$) {
# empty the input string in the stack so perlio is ok
$_[1] = '' if $chk;
my ( $h2z, $jis0212 ) = @$obj{qw(h2z jis0212)};
- my $octet = Encode::encode( 'euc-jp', $utf8, $chk );
+ my $octet = Encode::encode( 'euc-jp', $utf8, $chk || 0 );
$h2z and &Encode::JP::H2Z::h2z( \$octet );
euc_jis( \$octet, $jis0212 );
return $octet;
diff --git a/cpan/Encode/lib/Encode/MIME/Header.pm b/cpan/Encode/lib/Encode/MIME/Header.pm
index e23abffe37..848de99fa4 100644
--- a/cpan/Encode/lib/Encode/MIME/Header.pm
+++ b/cpan/Encode/lib/Encode/MIME/Header.pm
@@ -2,7 +2,7 @@ package Encode::MIME::Header;
use strict;
use warnings;
-our $VERSION = do { my @r = ( q$Revision: 2.27 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r };
+our $VERSION = do { my @r = ( q$Revision: 2.28 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r };
use Carp ();
use Encode ();
@@ -128,26 +128,26 @@ sub decode($$;$) {
}
if ( not defined $enc ) {
- Carp::croak qq(Unknown charset "$charset") if not ref $chk and $chk & Encode::DIE_ON_ERR;
- Carp::carp qq(Unknown charset "$charset") if not ref $chk and $chk & Encode::WARN_ON_ERR;
- $stop = 1 if not ref $chk and $chk & Encode::RETURN_ON_ERR;
+ Carp::croak qq(Unknown charset "$charset") if not ref $chk and $chk and $chk & Encode::DIE_ON_ERR;
+ Carp::carp qq(Unknown charset "$charset") if not ref $chk and $chk and $chk & Encode::WARN_ON_ERR;
+ $stop = 1 if not ref $chk and $chk and $chk & Encode::RETURN_ON_ERR;
$output .= ($output =~ /(?:\A|[ \t])$/ ? '' : ' ') . $orig unless $stop; # $orig mime word is separated by whitespace
$stop ? $orig : '';
} else {
if ( uc($mime_enc) eq 'B' and $obj->{decode_b} ) {
my $decoded = _decode_b($enc, $text, $chk);
- $stop = 1 if not defined $decoded and not ref $chk and $chk & Encode::RETURN_ON_ERR;
+ $stop = 1 if not defined $decoded and not ref $chk and $chk and $chk & Encode::RETURN_ON_ERR;
$output .= (defined $decoded ? $decoded : $text) unless $stop;
$stop ? $orig : '';
} elsif ( uc($mime_enc) eq 'Q' and $obj->{decode_q} ) {
my $decoded = _decode_q($enc, $text, $chk);
- $stop = 1 if not defined $decoded and not ref $chk and $chk & Encode::RETURN_ON_ERR;
+ $stop = 1 if not defined $decoded and not ref $chk and $chk and $chk & Encode::RETURN_ON_ERR;
$output .= (defined $decoded ? $decoded : $text) unless $stop;
$stop ? $orig : '';
} else {
- Carp::croak qq(MIME "$mime_enc" unsupported) if not ref $chk and $chk & Encode::DIE_ON_ERR;
- Carp::carp qq(MIME "$mime_enc" unsupported) if not ref $chk and $chk & Encode::WARN_ON_ERR;
- $stop = 1 if not ref $chk and $chk & Encode::RETURN_ON_ERR;
+ Carp::croak qq(MIME "$mime_enc" unsupported) if not ref $chk and $chk and $chk & Encode::DIE_ON_ERR;
+ Carp::carp qq(MIME "$mime_enc" unsupported) if not ref $chk and $chk and $chk & Encode::WARN_ON_ERR;
+ $stop = 1 if not ref $chk and $chk and $chk & Encode::RETURN_ON_ERR;
$output .= ($output =~ /(?:\A|[ \t])$/ ? '' : ' ') . $orig unless $stop; # $orig mime word is separated by whitespace
$stop ? $orig : '';
}
@@ -198,6 +198,7 @@ sub _decode_q {
sub _decode_octets {
my ($enc, $octets, $chk) = @_;
+ $chk = 0 unless defined $chk;
$chk &= ~Encode::LEAVE_SRC if not ref $chk and $chk;
my $output = $enc->decode($octets, $chk);
return undef if not ref $chk and $chk and $octets ne '';
@@ -238,7 +239,9 @@ sub _encode_string {
my ($obj, $str, $chk) = @_;
my $wordlen = $obj->{bpl} > 76 ? 76 : $obj->{bpl};
my $enc = Encode::find_mime_encoding($obj->{charset});
- my $enc_chk = (not ref $chk and $chk) ? ($chk | Encode::LEAVE_SRC) : $chk;
+ my $enc_chk = $chk;
+ $enc_chk = 0 unless defined $enc_chk;
+ $enc_chk |= Encode::LEAVE_SRC if not ref $enc_chk and $enc_chk;
my @result = ();
my $octets = '';
while ( length( my $chr = substr($str, 0, 1, '') ) ) {
diff --git a/cpan/Encode/lib/Encode/MIME/Name.pm b/cpan/Encode/lib/Encode/MIME/Name.pm
index 1a8d788aec..72ec79adda 100644
--- a/cpan/Encode/lib/Encode/MIME/Name.pm
+++ b/cpan/Encode/lib/Encode/MIME/Name.pm
@@ -1,7 +1,7 @@
package Encode::MIME::Name;
use strict;
use warnings;
-our $VERSION = do { my @r = ( q$Revision: 1.2 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r };
+our $VERSION = do { my @r = ( q$Revision: 1.3 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r };
# NOTE: This table must be 1:1 mapping
our %MIME_NAME_OF = (
@@ -38,6 +38,7 @@ our %MIME_NAME_OF = (
'cp866' => 'IBM866',
'cp869' => 'IBM869',
'cp936' => 'GBK',
+ 'euc-cn' => 'EUC-CN',
'euc-jp' => 'EUC-JP',
'euc-kr' => 'EUC-KR',
#'gb2312-raw' => 'GB2312', # no, you're wrong, I18N::Charset
diff --git a/cpan/Encode/t/decode.t b/cpan/Encode/t/decode.t
index 3995412895..0cc6c87644 100644
--- a/cpan/Encode/t/decode.t
+++ b/cpan/Encode/t/decode.t
@@ -1,11 +1,13 @@
#
-# $Id: decode.t,v 1.3 2016/10/28 05:03:52 dankogai Exp $
+# $Id: decode.t,v 1.4 2017/10/06 22:21:53 dankogai Exp dankogai $
#
use strict;
use Encode qw(decode_utf8 FB_CROAK find_encoding decode);
use Test::More tests => 17;
+use Test::Builder;
sub croak_ok(&) {
+ local $Test::Builder::Level = $Test::Builder::Level + 1;
my $code = shift;
eval { $code->() };
like $@, qr/does not map/;
diff --git a/cpan/Encode/t/mime-header.t b/cpan/Encode/t/mime-header.t
index 7abb0206cb..bf48753d93 100644
--- a/cpan/Encode/t/mime-header.t
+++ b/cpan/Encode/t/mime-header.t
@@ -1,5 +1,5 @@
#
-# $Id: mime-header.t,v 2.15 2017/07/18 07:15:29 dankogai Exp dankogai $
+# $Id: mime-header.t,v 2.15 2017/07/18 07:15:29 dankogai Exp $
# This script is written in utf8
#
BEGIN {
diff --git a/cpan/Encode/t/mime-name.t b/cpan/Encode/t/mime-name.t
index ced4e7c031..46bd4bf96b 100644
--- a/cpan/Encode/t/mime-name.t
+++ b/cpan/Encode/t/mime-name.t
@@ -1,5 +1,5 @@
#
-# $Id: mime-name.t,v 1.2 2016/10/28 05:03:52 dankogai Exp $
+# $Id: mime-name.t,v 1.3 2017/10/06 22:21:53 dankogai Exp dankogai $
# This script is written in utf8
#
BEGIN {
@@ -23,7 +23,7 @@ use strict;
use warnings;
use Encode;
#use Test::More qw(no_plan);
-use Test::More tests => 277;
+use Test::More tests => 281;
BEGIN {
use_ok("Encode::MIME::Name");