From ce28f6ca9062e9e1ffc074e14fc3874a9be9a7aa Mon Sep 17 00:00:00 2001 From: Hiltjo Posthuma Date: Tue, 1 Apr 2014 15:14:21 +0200 Subject: [PATCH] cmp: dont output EOF difference is sflag is set Signed-off-by: Hiltjo Posthuma --- cmp.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/cmp.c b/cmp.c index fa88cc9..d61b1f5 100644 --- a/cmp.c +++ b/cmp.c @@ -56,11 +56,14 @@ main(int argc, char *argv[]) line++; if(b[0] == b[1]) continue; - for(i = 0; i < 2; i++) - if(b[i] == EOF) - enprintf(Diff, "cmp: EOF on %s\n", - !argv[i] ? "" : argv[i]); - if(!lflag) { + for(i = 0; i < 2; i++) { + if(b[i] == EOF) { + if(!sflag) + fprintf(stderr, "cmp: EOF on %s\n", + !argv[i] ? "" : argv[i]); + exit(Diff); + } + } if(!sflag) printf("%s %s differ: char %ld, line %ld\n", argv[0], !argv[1] ? "" : argv[1], n, line);