Nur dann die Eingabe recodieren, wenn sich die Charsets wirklich unterscheiden.
authorMoritz Bunkus <m.bunkus@linet-services.de>
Wed, 26 Aug 2009 09:42:54 +0000 (11:42 +0200)
committerSven Schöling <s.schoeling@linet-services.de>
Fri, 28 Aug 2009 15:31:02 +0000 (17:31 +0200)
SL/Form.pm

index 4febdc7..64bed86 100644 (file)
@@ -306,11 +306,13 @@ sub new {
   my $db_charset   = $main::dbcharset;
   $db_charset    ||= Common::DEFAULT_CHARSET;
 
-  if ($self->{INPUT_ENCODING} && (lc $self->{INPUT_ENCODING} ne $db_charset)) {
-    require Text::Iconv;
-    my $iconv = Text::Iconv->new($self->{INPUT_ENCODING}, $db_charset);
+  if ($self->{INPUT_ENCODING}) {
+    if (lc $self->{INPUT_ENCODING} ne lc $db_charset) {
+      require Text::Iconv;
+      my $iconv = Text::Iconv->new($self->{INPUT_ENCODING}, $db_charset);
 
-    _recode_recursively($iconv, $self);
+      _recode_recursively($iconv, $self);
+    }
 
     delete $self{INPUT_ENCODING};
   }