return undef;
}
-sub parse ($)
+sub parse
{
# header and decoded body respectively
my (@headerlines, @bodylines);
- my $parser = new MIME::Parser;
+ my $parser = MIME::Parser->new();
mkdir "mime.tmp.$$", 0777;
$parser->output_under("mime.tmp.$$");
my $entity = eval { $parser->parse_data($_[0]) };
]));
}
-sub decode_rfc1522 ($)
-{
+sub decode_rfc1522 {
my ($string) = @_;
# this is craptacular, but leading space is hacked off by unmime.
# We cannot use MIME::Words::encode_mimewords because that function
# does not handle spaces properly at all.
-sub encode_rfc1522 ($) {
+sub encode_rfc1522 {
my ($rawstr) = @_;
+ # handle being passed undef properly
+ return undef if not defined $rawstr;
# We process words in reverse so we can preserve spacing between
# encoded words. This regex splits on word|nonword boundaries and
# nonword|nonword boundaries.