commit 77ab42908e0d3a990b11183d751021de604b63b5
Author: FRIGN <[email protected]>
Date:   Wed Mar 18 00:20:19 2015 +0100

    Audit wc(1)
    
    Style cleanup, Manpage refactoring.

diff --git a/README b/README
index ad9586f..5c9a5df 100644
--- a/README
+++ b/README
@@ -86,7 +86,7 @@ The following tools are implemented ('*' == finished, '#' == 
UTF-8 support,
 =*| unlink          yes                          none
 =*| uudecode        yes                          none
 =*| uuencode        yes                          none
-#*  wc              yes                          none
+#*| wc              yes                          none
 =   xargs           no                           -I, -L, -p, -s, -t, -x
 =*| yes             non-posix                    none
 
diff --git a/wc.1 b/wc.1
index c18b210..7251382 100644
--- a/wc.1
+++ b/wc.1
@@ -1,4 +1,4 @@
-.Dd February 1, 2015
+.Dd March 18, 2015
 .Dt WC 1
 .Os sbase
 .Sh NAME
@@ -11,9 +11,9 @@
 .Op Ar file ...
 .Sh DESCRIPTION
 .Nm
-prints the number of lines, words and bytes in each
-.Ar file ,
-unless set differently with flags.
+writes the number of lines, words and bytes in each
+.Ar file
+to stdout.
 If no
 .Ar file
 is given
diff --git a/wc.c b/wc.c
index f3064a9..0ff3b8d 100644
--- a/wc.c
+++ b/wc.c
@@ -61,7 +61,7 @@ int
 main(int argc, char *argv[])
 {
        FILE *fp;
-       int i;
+       int many;
        int ret = 0;
 
        ARGBEGIN {
@@ -81,20 +81,21 @@ main(int argc, char *argv[])
                usage();
        } ARGEND;
 
-       if (argc == 0) {
+       if (!argc) {
                wc(stdin, NULL);
        } else {
-               for (i = 0; i < argc; i++) {
-                       if (!(fp = fopen(argv[i], "r"))) {
-                               weprintf("fopen %s:", argv[i]);
+               for (many = (argc > 1); *argv; argc--, argv++) {
+                       if (!(fp = fopen(*argv, "r"))) {
+                               weprintf("fopen %s:", *argv);
                                ret = 1;
                                continue;
                        }
-                       wc(fp, argv[i]);
+                       wc(fp, *argv);
                        fclose(fp);
                }
-               if (argc > 1)
+               if (many)
                        output("total", tc, tl, tw);
        }
+
        return ret;
 }

Reply via email to