Fixed a corner case with display.cgi and base64 encoding
authorAndrew DeFaria <Andrew@DeFaria.com>
Tue, 19 Dec 2017 19:13:47 +0000 (11:13 -0800)
committerAndrew DeFaria <Andrew@DeFaria.com>
Tue, 19 Dec 2017 19:13:47 +0000 (11:13 -0800)
maps/bin/display.cgi

index 7c4e3b8..5482c48 100755 (executable)
@@ -142,9 +142,13 @@ sub Body ($) {
   my @parts = $entity->parts;
 
   if (scalar @parts == 0) {
-    print '<pre>';
-    $entity->print_body;
-    print '</pre>';
+    if (${$entity->{mail_inet_head}{mail_hdr_hash}{'Content-Transfer-Encoding'}[0]} =~ /base64/) {
+      print $entity->{ME_Bodyhandle}{MBS_Data};
+    } else {
+      print '<pre>';
+      $entity->print_body;
+      print '</pre>';
+    } # if
   } else {
     foreach my $part ($entity->parts) {
       # We assume here that if this part is multipart/alternative then