jch@batcomputer.tn.cornell.edu (Jeffrey C Honig) (06/08/89)
I would like my mhl.repl to add a line indicating who sent the mail I am repling to before the included text. For example: On "date" Joe User <joe@host.domain> writes: > Blah blah blah > blah blah blah Before I go delving into mhl, has someone already done this? Also, in relation to the included text, mhl frequently sticks "> " charaters in the middle of lines in addition to at the beginning of the lines of the included text. Has anybody seen this and/or fixed it? I'm running MH 6.6 on a Sun 3 under SunOS 4.0.1. Thanks. Jeff
leres@ace.ee.lbl.gov (Craig Leres) (06/09/89)
Jeffrey C Honig writes: > Also, in relation to the included text, mhl frequently sticks "> " > charaters in the middle of lines in addition to at the beginning of the > lines of the included text. Has anybody seen this and/or fixed it? > > I'm running MH 6.6 on a Sun 3 under SunOS 4.0.1. Ah yes, I fixed that one last February. The problem was a boundry condition that occured when a read() split a line in the middle. A context diff for uip/mhlsbr.c (mh 6.5) is appended. Craig ------ RCS file: RCS/mhlsbr.c,v retrieving revision 1.2 diff -c -r1.2 mhlsbr.c *** /tmp/,RCSt1a03292 Thu Jun 8 12:53:35 1989 --- mhlsbr.c Thu Feb 2 20:57:25 1989 *************** *** 1074,1079 **** --- 1074,1080 ---- int count, cchdr; register char *cp; + static int lastterm = '\n'; /* initial state */ cchdr = 0; lm = 0; *************** *** 1113,1119 **** for (cp = (c1 -> c_text ? c1 -> c_text : c1 -> c_name); *cp; cp++) if (islower (*cp)) *cp = toupper (*cp); ! putstr (c1 -> c_text ? c1 -> c_text : c1 -> c_name); if (flag != BODYCOMP) { putstr (": "); c1 -> c_flags |= HDROUTPUT; --- 1114,1121 ---- for (cp = (c1 -> c_text ? c1 -> c_text : c1 -> c_name); *cp; cp++) if (islower (*cp)) *cp = toupper (*cp); ! if (flag != BODYCOMP || lastterm == '\n') ! putstr (c1 -> c_text ? c1 -> c_text : c1 -> c_name); if (flag != BODYCOMP) { putstr (": "); c1 -> c_flags |= HDROUTPUT; *************** *** 1151,1170 **** putstr (oneline (c2 -> c_text, c1 -> c_flags)); if (term == '\n') putstr ("\n"); ! while (cp = oneline (c2 -> c_text, c1 -> c_flags)) if (*cp) { lm = count; - if (flag == BODYCOMP - && !(c1 -> c_flags & HDROUTPUT) - && !(c1 -> c_flags & NOCOMPONENT)) - putstr (c1 -> c_text ? c1 -> c_text : c1 -> c_name); putstr (cp); - if (term == '\n') - putstr ("\n"); } ! else ! if (term == '\n') ! putstr ("\n"); } /* */ --- 1153,1173 ---- putstr (oneline (c2 -> c_text, c1 -> c_flags)); if (term == '\n') putstr ("\n"); ! lastterm = term; ! while (cp = oneline (c2 -> c_text, c1 -> c_flags)) { ! if (flag == BODYCOMP ! && lastterm == '\n' ! && !(c1 -> c_flags & HDROUTPUT) ! && !(c1 -> c_flags & NOCOMPONENT)) ! putstr (c1 -> c_text ? c1 -> c_text : c1 -> c_name); if (*cp) { lm = count; putstr (cp); } ! if (term == '\n') ! putstr ("\n"); ! lastterm = term; ! } } /* */