summaryrefslogtreecommitdiff
path: root/fml
diff options
context:
space:
mode:
authorfukachan <fukachan>2003-05-27 11:34:14 +0000
committerfukachan <fukachan>2003-05-27 11:34:14 +0000
commit8c3f99daeca839df24e2b7585bd7ca742a0cca25 (patch)
tree2f70efe8bd1af67fa154eb86b063c74f6d2cb132 /fml
parentc2355715090629586a57ce74206e29cca0c7b2c1 (diff)
downloadfml8-8c3f99daeca839df24e2b7585bd7ca742a0cca25.tar.gz
fml8-8c3f99daeca839df24e2b7585bd7ca742a0cca25.tar.bz2
fml8-8c3f99daeca839df24e2b7585bd7ca742a0cca25.zip
print text in "unknown MIME encoding" case.
try to validate key and value in hash operation but ... (?)
Diffstat (limited to 'fml')
-rw-r--r--fml/lib/Mail/Message/ToHTML.pm30
1 files changed, 17 insertions, 13 deletions
diff --git a/fml/lib/Mail/Message/ToHTML.pm b/fml/lib/Mail/Message/ToHTML.pm
index 5bbdfd87..c57fdca1 100644
--- a/fml/lib/Mail/Message/ToHTML.pm
+++ b/fml/lib/Mail/Message/ToHTML.pm
@@ -4,7 +4,7 @@
# All rights reserved. This program is free software; you can
# redistribute it and/or modify it under the same terms as Perl itself.
#
-# $FML: ToHTML.pm,v 1.39 2003/03/09 03:10:32 fukachan Exp $
+# $FML: ToHTML.pm,v 1.40 2003/05/16 13:40:57 fukachan Exp $
#
package Mail::Message::ToHTML;
@@ -17,7 +17,7 @@ my $debug = 0;
my $URL =
"<A HREF=\"http://www.fml.org/software/\">Mail::Message::ToHTML</A>";
-my $version = q$FML: ToHTML.pm,v 1.39 2003/03/09 03:10:32 fukachan Exp $;
+my $version = q$FML: ToHTML.pm,v 1.40 2003/05/16 13:40:57 fukachan Exp $;
if ($version =~ /,v\s+([\d\.]+)\s+/) {
$version = "$URL $1";
}
@@ -866,7 +866,9 @@ sub _binary_print
_print_safe_str($fh, $msg->message_text());
}
else {
- croak("unknown MIME encoding enc=$enc");
+ my $r = "*** unknown MIME encoding enc='$enc' ***\n";
+ _print_safe_str($fh, $r);
+ _print_safe_str($fh, $msg->message_text());
}
$fh->close();
@@ -1114,17 +1116,19 @@ sub __add_value_to_array
{
my ($db, $dbname, $key, $value) = @_;
my $found = 0;
- my $ra = __str2array($db->{ $dbname }->{ $key });
-
- # ensure uniqueness
- for my $v (@$ra) {
- $found = 1 if ($value =~ /^\d+$/o) && ($v == $value);
- $found = 1 if ($value !~ /^\d+$/o) && ($v eq $value);
- }
+ my $ra = __str2array($db->{ $dbname }->{ $key }) || [];
- # add if the value is a new comer.
- unless ($found) {
- $db->{ $dbname }->{ $key } .= " $value";
+ if (defined($key) && $key && defined($value) && $value) {
+ # check dup to ensure uniqueness within this array.
+ for my $v (@$ra) {
+ $found = 1 if ($value =~ /^\d+$/o) && ($v == $value);
+ $found = 1 if ($value !~ /^\d+$/o) && ($v eq $value);
+ }
+
+ # add if the value is a new comer.
+ unless ($found) {
+ $db->{ $dbname }->{ $key } .= " $value";
+ }
}
}