locale->text prüft jetzt auf bool statt auf exists.
authorSven Schöling <s.schoeling@linet-services.de>
Fri, 23 Jul 2010 10:01:36 +0000 (12:01 +0200)
committerSven Schöling <s.schoeling@linet-services.de>
Fri, 23 Jul 2010 10:01:36 +0000 (12:01 +0200)
$::locale->text hat seit einiger Zeit keinen Fallback mehr auf die interne
Version, was die Englische Lokalisierung unbenutzbar macht. Diese Patch ist ein
Quifix, das eigentliche Problem ist, dass die englische Lokalisierung nahezu
nicht vorhanden ist.

Bisher wurde auf ein explizites exists geprüft, da aber das locales script
mittlerweile alle Daten in einer grossen Datei hät, sind potentiell auch alle
Keys belegt.

Mit dieser Version wird die englische Version wie bisher angezeigt, dafür sind
"leere" Lokalisierungen nicht mehr möglich, weil sie zurückfallen auf die
interne Repräsentation.

Muss nochmal angegangen werden.

SL/Locale.pm

index 7f8b6c6..881d592 100644 (file)
@@ -213,7 +213,7 @@ sub text {
   my $self = shift;
   my $text = shift;
 
-  if (exists $self->{texts}->{$text}) {
+  if ($self->{texts}->{$text}) {
     $text = $self->{iconv}->convert($self->{texts}->{$text});
   } else {
     $text = $self->{iconv_english}->convert($text);