--- lib/MIME/Parser.pm.orig	2007-05-02 13:04:15.000000000 -0700
+++ lib/MIME/Parser.pm	2007-05-02 13:06:01.000000000 -0700
@@ -891,6 +891,7 @@
 sub hunt_for_uuencode {
     my ($self, $ENCODED, $ent) = @_;
     my ($good, $how_encoded);
+    my $param_name = undef;
     local $_;
     $self->debug("sniffing around for UUENCODE");
 
@@ -921,6 +922,12 @@
     $top_ent->make_multipart;
     my @parts;
 
+    ## 20060926EH:
+    ## capture the 'name' parameter in the Content-Type in case we don't
+    ## get a 'filename' parameter.
+    $param_name = $ent->head->mime_attr("content-type.name");
+
+
     ### Made the first cut; on to the real stuff:
     $ENCODED->seek(0,0) or die "$ME: can't seek: $!";
     $self->whine("Found a $how_encoded attachment");
@@ -932,7 +939,7 @@
 	my $out = IO::ScalarArray->new(\@bin_data);
 	eval { $decoder->decode($ENCODED, $out) }; last if $@;
 	my $preamble = $decoder->last_preamble;
-	my $filename = $decoder->last_filename;
+	my $filename = (defined($decoder->last_filename ) ? $decoder->last_filename : $param_name);
 	my $mode     = $decoder->last_mode;
 
 	### Get probable type:
