diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2002-04-27 15:48:34 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2002-04-27 15:48:34 +0000 |
commit | fc17bd483fe538010972a975723fc880f8afb203 (patch) | |
tree | 51d8cbaddc0fb391ffa2cbe669938841c5693ffa /ext | |
parent | 365d6a78c0c0d9ae8eb550ee59400df4508f8b71 (diff) | |
download | perl-fc17bd483fe538010972a975723fc880f8afb203.tar.gz |
Upgrade to Encode 1.62.
p4raw-id: //depot/perl@16214
Diffstat (limited to 'ext')
-rw-r--r-- | ext/Encode/Changes | 15 | ||||
-rw-r--r-- | ext/Encode/Encode.pm | 22 | ||||
-rw-r--r-- | ext/Encode/Encode.xs | 10 |
3 files changed, 31 insertions, 16 deletions
diff --git a/ext/Encode/Changes b/ext/Encode/Changes index ad4fabb76a..1bc3925820 100644 --- a/ext/Encode/Changes +++ b/ext/Encode/Changes @@ -1,9 +1,18 @@ # Revision history for Perl extension Encode. # -# $Id: Changes,v 1.61 2002/04/26 03:02:04 dankogai Exp $ +# $Id: Changes,v 1.62 2002/04/27 11:17:39 dankogai Exp dankogai $ # -$Revision: 1.61 $ $Date: 2002/04/26 03:02:04 $ +$Revision: 1.62 $ $Date: 2002/04/27 11:17:39 $ +! Encode.pm + encodings() now just check %ExtModule instead of eval{require} + all of them for ":all" to conserve more memory. +! Encode.xs + more "%x" -> "%" UVxf stuff. +! Encode.pm + s/=over2/=over 2/g # oops. + +1.61 2002/04/26 03:02:04 ! t/mime-header.t Now does decent tests besides use_ok() ! lib/Encode/Guess.pm t/guess.t @@ -511,7 +520,7 @@ $Revision: 1.61 $ $Date: 2002/04/26 03:02:04 $ Typo fixes and improvements by jhi Message-Id: <200204010201.FAA03564@alpha.hut.fi>, et al. -1.11 $Date: 2002/04/26 03:02:04 $ +1.11 $Date: 2002/04/27 11:17:39 $ + t/encoding.t + t/jperl.t ! MANIFEST diff --git a/ext/Encode/Encode.pm b/ext/Encode/Encode.pm index e6c54f0a9f..f0f8f9d516 100644 --- a/ext/Encode/Encode.pm +++ b/ext/Encode/Encode.pm @@ -1,6 +1,6 @@ package Encode; use strict; -our $VERSION = do { my @r = (q$Revision: 1.61 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r }; +our $VERSION = do { my @r = (q$Revision: 1.62 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r }; our $DEBUG = 0; use XSLoader (); XSLoader::load 'Encode'; @@ -53,17 +53,21 @@ eval { require Encode::ConfigLocal }; sub encodings { my $class = shift; - my @modules = (@_ and $_[0] eq ":all") ? values %ExtModule : @_; - for my $mod (@modules){ - $mod =~ s,::,/,g or $mod = "Encode/$mod"; - $mod .= '.pm'; - $DEBUG and warn "about to require $mod;"; - eval { require $mod; }; + my %enc; + if (@_ and $_[0] eq ":all"){ + %enc = ( %Encoding, %ExtModule ); + }else{ + %enc = %Encoding; + for my $mod (map {m/::/o ? $_ : "Encode::$_" } @_){ + $DEBUG and warn $mod; + for my $enc (keys %ExtModule){ + $ExtModule{$enc} eq $mod and $enc{$enc} = $mod; + } + } } - my %modules = map {$_ => 1} @modules; return sort { lc $a cmp lc $b } - grep {!/^(?:Internal|Unicode)$/o} keys %Encoding; + grep {!/^(?:Internal|Unicode|Guess)$/o} keys %enc; } sub perlio_ok{ diff --git a/ext/Encode/Encode.xs b/ext/Encode/Encode.xs index 566d066596..57af0ad965 100644 --- a/ext/Encode/Encode.xs +++ b/ext/Encode/Encode.xs @@ -1,5 +1,5 @@ /* - $Id: Encode.xs,v 1.39 2002/04/26 03:02:04 dankogai Exp $ + $Id: Encode.xs,v 1.40 2002/04/27 11:17:39 dankogai Exp dankogai $ */ #define PERL_NO_GET_CONTEXT @@ -169,21 +169,23 @@ encode_method(pTHX_ encode_t * enc, encpage_t * dir, SV * src, else { if (check & ENCODE_DIE_ON_ERR){ Perl_croak( - aTHX_ "%s \"\\x%02X\" does not map to Unicode (%d)", + aTHX_ "%s \"\\x%02" UVXf + "\" does not map to Unicode (%d)", enc->name[0], (U8) s[slen], code); }else{ if (check & ENCODE_RETURN_ON_ERR){ if (check & ENCODE_WARN_ON_ERR){ Perl_warner( aTHX_ packWARN(WARN_UTF8), - "%s \"\\x%02X\" does not map to Unicode (%d)", + "%s \"\\x%02" UVXf + "\" does not map to Unicode (%d)", enc->name[0], (U8) s[slen], code); } goto ENCODE_SET_SRC; }else if (check & (ENCODE_PERLQQ|ENCODE_HTMLCREF|ENCODE_XMLCREF)){ SV* perlqq = - sv_2mortal(newSVpvf("\\x%02X", s[slen])); + sv_2mortal(newSVpvf("\\x%02" UVXf, s[slen])); sdone += slen + 1; ddone += dlen + SvCUR(perlqq); sv_catsv(dst, perlqq); |