projects
/
mmh
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Note in dist, mh-profile, and repl man pages that the @ link
[mmh]
/
uip
/
picksbr.c
diff --git
a/uip/picksbr.c
b/uip/picksbr.c
index
b92c053
..
91893e3
100644
(file)
--- a/
uip/picksbr.c
+++ b/
uip/picksbr.c
@@
-78,9
+78,10
@@
static struct swit parswit[] = {
static char linebuf[LBSIZE + 1];
static char linebuf[LBSIZE + 1];
+static char decoded_linebuf[LBSIZE + 1];
/* the magic array for case-independence */
/* the magic array for case-independence */
-static char cc[] = {
+static unsigned char cc[] = {
0000,0001,0002,0003,0004,0005,0006,0007,
0010,0011,0012,0013,0014,0015,0016,0017,
0020,0021,0022,0023,0024,0025,0026,0027,
0000,0001,0002,0003,0004,0005,0006,0007,
0010,0011,0012,0013,0014,0015,0016,0017,
0020,0021,0022,0023,0024,0025,0026,0027,
@@
-701,7
+702,8
@@
plist
break;
}
lf++;
break;
}
lf++;
- c = ' ';
+ /* Unfold by skipping the newline. */
+ c = 0;
}
}
if (c && p1 < &linebuf[LBSIZE - 1])
}
}
if (c && p1 < &linebuf[LBSIZE - 1])
@@
-713,6
+715,13
@@
plist
p1 = linebuf;
p2 = n->n_expbuf;
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;
if (n->n_circf) {
if (advance (p1, p2))
return 1;