diff options
author | tjr <tjr@FreeBSD.org> | 2002-07-05 09:28:13 +0000 |
---|---|---|
committer | tjr <tjr@FreeBSD.org> | 2002-07-05 09:28:13 +0000 |
commit | 3594350f009e160416b2900b05edbeec5b9b1741 (patch) | |
tree | 57ff142a33e9fbf09059bded7592ee7b820b3bff /usr.bin/uniq | |
parent | a651b056f9af4d848fbf5081a81e873a6facec95 (diff) | |
download | FreeBSD-src-3594350f009e160416b2900b05edbeec5b9b1741.zip FreeBSD-src-3594350f009e160416b2900b05edbeec5b9b1741.tar.gz |
Use err instead of errx when malloc fails. "malloc" is not a helpful
error message.
Diffstat (limited to 'usr.bin/uniq')
-rw-r--r-- | usr.bin/uniq/uniq.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/usr.bin/uniq/uniq.c b/usr.bin/uniq/uniq.c index c8bb5d4..e7d9645 100644 --- a/usr.bin/uniq/uniq.c +++ b/usr.bin/uniq/uniq.c @@ -136,10 +136,12 @@ main (argc, argv) prevline = malloc(MAXLINELEN); thisline = malloc(MAXLINELEN); if (prevline == NULL || thisline == NULL) - errx(1, "malloc"); + err(1, "malloc"); if (getline(prevline, MAXLINELEN, ifp) == NULL) exit(0); + if (!cflag && uflag && dflag) + show(ofp, prevline); while (getline(thisline, MAXLINELEN, ifp)) { /* If requested get the chosen fields + character offsets. */ @@ -158,15 +160,19 @@ main (argc, argv) comp = strcoll(t1, t2); if (comp) { - show(ofp, prevline); + if (cflag || !dflag || !uflag) + show(ofp, prevline); t1 = prevline; prevline = thisline; + if (!cflag && uflag && dflag) + show(ofp, prevline); thisline = t1; repeats = 0; } else ++repeats; } - show(ofp, prevline); + if (cflag || !dflag || !uflag) + show(ofp, prevline); exit(0); } @@ -253,7 +259,7 @@ obsolete(argv) */ len = strlen(ap); if ((start = p = malloc(len + 3)) == NULL) - errx(1, "malloc"); + err(1, "malloc"); *p++ = '-'; *p++ = ap[0] == '+' ? 's' : 'f'; (void)strcpy(p, ap + 1); |