Comment on kernel stuff
[oweals/busybox.git] / coreutils / yes.c
index 96d6257d0c5b4d928cd4bd336df85b10ff89fa9f..1718af4bb8891d46b9a72e1e0c51d5ce8d9378eb 100644 (file)
@@ -1,3 +1,4 @@
+/* vi: set sw=4 ts=4: */
 /*
  * Mini yes implementation for busybox
  *
 #include "internal.h"
 #include <stdio.h>
 
-extern int yes_main(int argc, char **argv) {
+extern int yes_main(int argc, char **argv)
+{
        int i;
-       if (argc == 1)
+
+       if (argc >= 2 && *argv[1] == '-') {
+               usage("yes [OPTION]... [STRING]...\n"
+#ifndef BB_FEATURE_TRIVIAL_HELP
+                               "\nRepeatedly outputs a line with all specified STRING(s), or `y'.\n"
+#endif
+                               );
+       }
+
+       if (argc == 1) {
                while (1)
-                       if (puts ("y") == EOF) {
-                               perror ("yes");
+                       if (puts("y") == EOF) {
+                               perror("yes");
                                exit(FALSE);
                        }
+       }
 
        while (1)
                for (i = 1; i < argc; i++)
-                       if (fputs (argv[i], stdout) == EOF || putchar (i == argc - 1 ? '\n' : ' ') == EOF) {
-                               perror ("yes");
+                       if (fputs(argv[i], stdout) == EOF
+                               || putchar(i == argc - 1 ? '\n' : ' ') == EOF) {
+                               perror("yes");
                                exit(FALSE);
                        }
        exit(TRUE);