about summary refs log tree commit homepage
path: root/lib/PublicInbox/View.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2016-09-08 19:44:16 +0000
committerEric Wong <e@80x24.org>2016-09-08 19:44:16 +0000
commit33d98667aef95cdf2511f5179263e894c19a211c (patch)
tree674ea077ed46f4c5fe408e63531365cb227633f3 /lib/PublicInbox/View.pm
parent36093117ac95714fc0ca3950d8d99de63ad6814f (diff)
downloadpublic-inbox-33d98667aef95cdf2511f5179263e894c19a211c.tar.gz
Email::MIME internally assumes "text/plain" for messages
missing a Content-Type, but does not expose that in the
Email::MIME::content_type API method.  We must assume it
ourselves to avoid uninitialized value warnings for the
rare (nowadays) MUAs which do not set it.
Diffstat (limited to 'lib/PublicInbox/View.pm')
-rw-r--r--lib/PublicInbox/View.pm5
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/PublicInbox/View.pm b/lib/PublicInbox/View.pm
index 6997c1c5..93592097 100644
--- a/lib/PublicInbox/View.pm
+++ b/lib/PublicInbox/View.pm
@@ -413,7 +413,6 @@ sub attach_link ($$$$;$) {
         my $nl = $idx[-1] > 1 ? "\n" : '';
         my $idx = join('.', @idx);
         my $size = bytes::length($part->body);
-        $ct ||= 'text/plain';
 
         # hide attributes normally, unless we want to aid users in
         # spotting MUA problems:
@@ -444,10 +443,10 @@ sub attach_link ($$$$;$) {
 sub add_text_body {
         my ($upfx, $p) = @_; # from msg_iter: [ Email::MIME, depth, @idx ]
         my ($part, $depth, @idx) = @$p;
-        my $ct = $part->content_type;
+        my $ct = $part->content_type || 'text/plain';
         my $fn = $part->filename;
 
-        if (defined $ct && $ct =~ m!\btext/x?html\b!i) {
+        if ($ct =~ m!\btext/x?html\b!i) {
                 return attach_link($upfx, $ct, $p, $fn);
         }