Replaced %Lexicons and %ENCODINGS with %CACHE, for code simplicity.
This commit is contained in:
		| @@ -26,7 +26,7 @@ SHA1 ec92e11b76afaa05f67d83a6e32056505a45c99e Makefile.PL | |||||||
| SHA1 b699f73f5fa33123b2f4f1b210665e295900c74d README | SHA1 b699f73f5fa33123b2f4f1b210665e295900c74d README | ||||||
| SHA1 3db402b52e04cf5a6e60291c23aac8c16f2db810 THANKS | SHA1 3db402b52e04cf5a6e60291c23aac8c16f2db810 THANKS | ||||||
| SHA1 85dd5ac895cc0a5b95827060999578d8ce8d41dd TODO | SHA1 85dd5ac895cc0a5b95827060999578d8ce8d41dd TODO | ||||||
| SHA1 b10574ec35614c629b52b87c6d92b4683a5c1a6d lib/Locale/Maketext/Gettext.pm | SHA1 ae54c66b3661c21ab99cc96e511bc13bc54bb6bc lib/Locale/Maketext/Gettext.pm | ||||||
| SHA1 b88b6bad1e8cb0ba825594c233c006c1b297646f lib/Locale/Maketext/Gettext/Functions.pm | SHA1 b88b6bad1e8cb0ba825594c233c006c1b297646f lib/Locale/Maketext/Gettext/Functions.pm | ||||||
| SHA1 f89afd70fdcbaeeab44fada7ed3087d5c7f6f018 script/maketext | SHA1 f89afd70fdcbaeeab44fada7ed3087d5c7f6f018 script/maketext | ||||||
| SHA1 525f414c7a0aadc61240a4b0959ca2cda7514c75 t/00-signature.t | SHA1 525f414c7a0aadc61240a4b0959ca2cda7514c75 t/00-signature.t | ||||||
| @@ -58,7 +58,7 @@ SHA1 20f810c6229d0bd4064b27f9b3d86b61a20f0821 t/locale/zh_TW/LC_MESSAGES/test_be | |||||||
| SHA1 eb13887b005e3c3e9fab774dfea22de5c01ad1ef t/locale/zh_TW/LC_MESSAGES/test_utf8.mo | SHA1 eb13887b005e3c3e9fab774dfea22de5c01ad1ef t/locale/zh_TW/LC_MESSAGES/test_utf8.mo | ||||||
| -----BEGIN PGP SIGNATURE----- | -----BEGIN PGP SIGNATURE----- | ||||||
|  |  | ||||||
| iF0EARECAB0WIQSBin4eTeP7OclnnAOL2C5vMLlLXAUCXXY83QAKCRCL2C5vMLlL | iF0EARECAB0WIQSBin4eTeP7OclnnAOL2C5vMLlLXAUCXXY9rAAKCRCL2C5vMLlL | ||||||
| XHVLAKCdSD4iKO//dkJljfF6dt3dIFTU5gCeKI8Kry3iISYdbcwVwMP80gff9Wg= | XOFMAJ9+q/8hoCXsWHf67crLWy9mKH439ACeKDvX07Gyac+c+/nzmgErUodrPeo= | ||||||
| =fz/R | =AA1R | ||||||
| -----END PGP SIGNATURE----- | -----END PGP SIGNATURE----- | ||||||
|   | |||||||
| @@ -21,7 +21,8 @@ use Encode qw(encode decode FB_DEFAULT); | |||||||
| use File::Spec::Functions qw(catfile); | use File::Spec::Functions qw(catfile); | ||||||
| no strict qw(refs); | no strict qw(refs); | ||||||
|  |  | ||||||
| use vars qw(%Lexicons %ENCODINGS $REREAD_MO $MO_FILE); | use vars qw(%CACHE $REREAD_MO $MO_FILE); | ||||||
|  | %CACHE = qw(); | ||||||
| $REREAD_MO = 0; | $REREAD_MO = 0; | ||||||
| $MO_FILE = ""; | $MO_FILE = ""; | ||||||
| use vars qw(@SYSTEM_LOCALEDIRS); | use vars qw(@SYSTEM_LOCALEDIRS); | ||||||
| @@ -191,7 +192,7 @@ sub textdomain : method { | |||||||
|      |      | ||||||
|     # Read the MO file |     # Read the MO file | ||||||
|     # Cached |     # Cached | ||||||
|     if (!exists $ENCODINGS{$mo_file} || !exists $Lexicons{$mo_file}) { |     if (!exists $CACHE{$mo_file}) { | ||||||
|         my $enc; |         my $enc; | ||||||
|         # Read it |         # Read it | ||||||
|         %_ = read_mo($mo_file); |         %_ = read_mo($mo_file); | ||||||
| @@ -211,13 +212,15 @@ sub textdomain : method { | |||||||
|         } |         } | ||||||
|          |          | ||||||
|         # Cache them |         # Cache them | ||||||
|         $Lexicons{$mo_file} = \%_; |         $CACHE{$mo_file} = { | ||||||
|         $ENCODINGS{$mo_file} = $enc; |                 "Lexicon"   => {%_}, | ||||||
|  |                 "encoding"  => $enc, | ||||||
|  |             }; | ||||||
|     } |     } | ||||||
|      |      | ||||||
|     # Respect the existing output encoding |     # Respect the existing output encoding | ||||||
|     if (defined $ENCODINGS{$mo_file}) { |     if (defined $CACHE{$mo_file}->{"encoding"}) { | ||||||
|         $self->{"MO_ENCODING"} = $ENCODINGS{$mo_file}; |         $self->{"MO_ENCODING"} = $CACHE{$mo_file}->{"encoding"}; | ||||||
|     } else { |     } else { | ||||||
|         delete $self->{"MO_ENCODING"}; |         delete $self->{"MO_ENCODING"}; | ||||||
|     } |     } | ||||||
| @@ -229,8 +232,8 @@ sub textdomain : method { | |||||||
|             delete $self->{"ENCODING"}; |             delete $self->{"ENCODING"}; | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|     $self->{"Lexicon"} = $Lexicons{$mo_file}; |     $self->{"Lexicon"} = $CACHE{$mo_file}->{"Lexicon"}; | ||||||
|     %{"$class\::Lexicon"} = %{$Lexicons{$mo_file}}; |     %{"$class\::Lexicon"} = %{$CACHE{$mo_file}->{"Lexicon"}}; | ||||||
|     $self->clear_isa_scan; |     $self->clear_isa_scan; | ||||||
|      |      | ||||||
|     return $DOMAIN; |     return $DOMAIN; | ||||||
| @@ -366,8 +369,7 @@ sub reload_text : method { | |||||||
|     local ($_, %_); |     local ($_, %_); | ||||||
|      |      | ||||||
|     # Purge the text cache |     # Purge the text cache | ||||||
|     %Lexicons = qw(); |     %CACHE = qw(); | ||||||
|     %ENCODINGS = qw(); |  | ||||||
|     $REREAD_MO = time; |     $REREAD_MO = time; | ||||||
|      |      | ||||||
|     return; |     return; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user