Ressurect change 27824, which plugs a resource leak in uncalled code.
[p5sagit/p5-mst-13.2.git] / ext / Encode / CN / CN.pm
index 9ad7ace..cdd3ae7 100644 (file)
@@ -1,24 +1,25 @@
 package Encode::CN;
+
 BEGIN {
-    if (ord("A") == 193) {
-       die "Encode::CN not supported on EBCDIC\n";
+    if ( ord("A") == 193 ) {
+        die "Encode::CN not supported on EBCDIC\n";
     }
 }
-our $VERSION = do { my @r = (q$Revision: 0.99 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r };
+our $VERSION = do { my @r = ( q$Revision: 2.1 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r };
 
 use Encode;
-use Encode::CN::HZ;
 use XSLoader;
-XSLoader::load('Encode::CN',$VERSION);
+XSLoader::load( __PACKAGE__, $VERSION );
 
 # Relocated from Encode.pm
-# CP936 doesn't have vendor-addon for GBK, so they're identical.
-Encode::define_alias( qr/^gbk$/i => '"cp936"');
 
-use Encode::CN::2022_CN;
+use Encode::CN::HZ;
+
+# use Encode::CN::2022_CN;
 
 1;
 __END__
+
 =head1 NAME
 
 Encode::CN - China-based Chinese Encodings
@@ -36,14 +37,16 @@ Encodings supported are as follows.
 
   Canonical   Alias            Description
   --------------------------------------------------------------------
-  euc-cn      /euc.*cn$/i      EUC (Extended Unix Character)
-             /cn.*euc$/i
-  gb2312                       The raw (low-bit) GB2312 character map
-  gb12345                      Traditional chinese counterpart to 
-                               GB2312 (raw)
+  euc-cn      /\beuc.*cn$/i    EUC (Extended Unix Character)
+          /\bcn.*euc$/i
+              /\bGB[-_ ]?2312(?:\D.*$|$)/i (see below)
+  gb2312-raw                   The raw (low-bit) GB2312 character map
+  gb12345-raw                  Traditional chinese counterpart to 
+                GB2312 (raw)
   iso-ir-165                   GB2312 + GB6345 + GB8565 + additions
+  MacChineseSimp                GB2312 + Apple Additions
   cp936                                Code Page 936, also known as GBK 
-                               (Extended GuoBiao)
+                (Extended GuoBiao)
   hz                           7-bit escaped GB2312 encoding
   --------------------------------------------------------------------
 
@@ -57,12 +60,16 @@ also contains extra Taiwan-based encodings.
 
 =head1 BUGS
 
-ASCII part (0x00-0x7f) is preserved for all encodings, even though it
-conflicts with mappings by the Unicode Consortium.  See
+When you see C<charset=gb2312> on mails and web pages, they really
+mean C<euc-cn> encodings.  To fix that, C<gb2312> is aliased to C<euc-cn>.
+Use C<gb2312-raw> when you really mean it.
+
+The ASCII region (0x00-0x7f) is preserved for all encodings, even though
+this conflicts with mappings by the Unicode Consortium.  See
 
 L<http://www.debian.or.jp/~kubota/unicode-symbols.html.en>
 
-to find why it is implemented that way.
+to find out why it is implemented that way.
 
 =head1 SEE ALSO