=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/mail/edit.c,v retrieving revision 1.19 retrieving revision 1.20 diff -c -r1.19 -r1.20 *** src/usr.bin/mail/edit.c 2009/10/27 23:59:40 1.19 --- src/usr.bin/mail/edit.c 2017/03/28 09:14:43 1.20 *************** *** 1,4 **** ! /* $OpenBSD: edit.c,v 1.19 2009/10/27 23:59:40 deraadt Exp $ */ /* $NetBSD: edit.c,v 1.5 1996/06/08 19:48:20 christos Exp $ */ /* --- 1,4 ---- ! /* $OpenBSD: edit.c,v 1.20 2017/03/28 09:14:43 natano Exp $ */ /* $NetBSD: edit.c,v 1.5 1996/06/08 19:48:20 christos Exp $ */ /* *************** *** 76,82 **** int edit1(int *msgvec, int type) { ! int c, i; FILE *fp; struct sigaction oact; sigset_t oset; --- 76,82 ---- int edit1(int *msgvec, int type) { ! int nl = 0, c, i; FILE *fp; struct sigaction oact; sigset_t oset; *************** *** 115,124 **** mp->m_flag |= MODIFY; rewind(fp); while ((c = getc(fp)) != EOF) { ! if (c == '\n') mp->m_lines++; if (putc(c, otf) == EOF) break; } if (ferror(otf)) warn("%s", tmpdir); --- 115,132 ---- mp->m_flag |= MODIFY; rewind(fp); while ((c = getc(fp)) != EOF) { ! if (c == '\n') { mp->m_lines++; + nl++; + } else + nl = 0; if (putc(c, otf) == EOF) break; + } + for (; nl < 2; nl++) { + mp->m_lines++; + mp->m_size++; + putc('\n', otf); } if (ferror(otf)) warn("%s", tmpdir);