diff --git a/mshow.c b/mshow.c index 1cd2cbc..b4463e9 100644 --- a/mshow.c +++ b/mshow.c @@ -158,11 +158,11 @@ mime_filename(struct message *msg) static char buf[512]; char *v; char *filename = 0; - - if ((v = blaze822_hdr(msg, "content-disposition"))) { - if (blaze822_mime2231_parameter(v, "filename", - buf, sizeof buf, "UTF-8")) - filename = buf; + + if ((v = blaze822_hdr(msg, "content-disposition")) && + blaze822_mime2231_parameter(v, "filename", + buf, sizeof buf, "UTF-8")) { + filename = buf; } else if ((v = blaze822_hdr(msg, "content-type"))) { if (blaze822_mime2231_parameter(v, "name", buf, sizeof buf, "UTF-8"))