X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Fpick.c;h=8448d968bc8ee654c1eb9e86f71bcfe699c2c81e;hb=55ca5bf643035fd37cf0568e5ea73c1a8636b9a6;hp=819d81a247399dacaea06a9f771cde48fc278cf2;hpb=e16d5bfc58d8b0dfe61701cd4d6b1732e837d60a;p=mmh diff --git a/uip/pick.c b/uip/pick.c index 819d81a..8448d96 100644 --- a/uip/pick.c +++ b/uip/pick.c @@ -381,6 +381,7 @@ static struct swit parswit[] = { static char linebuf[LBSIZE + 1]; +static char decoded_linebuf[LBSIZE + 1]; /* the magic array for case-independence */ static char cc[] = { @@ -1016,6 +1017,13 @@ plist p1 = linebuf; p2 = n->n_expbuf; + /* Attempt to decode as a MIME header. If it's the last header, + * body will be 1 and lf will be at least 1. */ + if ((body == 0 || lf > 0) && + decode_rfc2047 (linebuf, decoded_linebuf, sizeof decoded_linebuf)) { + p1 = decoded_linebuf; + } + if (n->n_circf) { if (advance(p1, p2)) return 1;