Ammend bin/cat/cat.c so the output is the same aside

from blank lines being numbered or unnumbered, depending on whether cat
was invoked with -ne or -be.

At present, when cat is invoked with -be, there is an aditional
difference that the '$' on blank lines is placed on the far left of the
output.

Discussed in bug 210607.

While here, revert the workaround from r304035 which skipped the unit test for
this issue previously.

PR:		210607
Submitted by:	myself
Reviewed by:	bdrewery
Obtained from:	NetBSD
Relnotes:	yes
Differential Revision:	https://reviews.freebsd.org/D12432
This commit is contained in:
Sevan Janiyan 2017-09-21 14:14:49 +00:00
parent ed9de14d2f
commit 6d2e5f3ddf
2 changed files with 10 additions and 10 deletions

View File

@ -226,10 +226,16 @@ cook_cat(FILE *fp)
} else } else
gobble = 0; gobble = 0;
} }
if (nflag && (!bflag || ch != '\n')) { if (nflag) {
(void)fprintf(stdout, "%6d\t", ++line); if (!bflag || ch != '\n') {
if (ferror(stdout)) (void)fprintf(stdout, "%6d\t", ++line);
break; if (ferror(stdout))
break;
} else if (eflag) {
(void)fprintf(stdout, "%6s\t", "");
if (ferror(stdout))
break;
}
} }
} }
if (ch == '\n') { if (ch == '\n') {

View File

@ -17,10 +17,4 @@ ${PACKAGE}FILES+= d_vt_output.out
.include <netbsd-tests.test.mk> .include <netbsd-tests.test.mk>
d_align.out: ${TESTSRC}/d_align.out
sed -E -e 's,^[[:space:]]{7}\$$$$,\$$,' < ${.ALLSRC} > ${.TARGET}.tmp
mv ${.TARGET}.tmp ${.TARGET}
CLEANFILES+= d_align.out d_align.out.tmp
.include <bsd.test.mk> .include <bsd.test.mk>