X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=coreutils%2Fyes.c;h=9d3f675501d5b41f525397532fa459b4432d47e8;hb=eab40e58858d01372b5d74b7330be2d7b1c7fc75;hp=97b4fe54c451b173bd44f2eb7700d800cc732a2e;hpb=801ab140132a111e9524371c9b8d425579692389;p=oweals%2Fbusybox.git diff --git a/coreutils/yes.c b/coreutils/yes.c index 97b4fe54c..9d3f67550 100644 --- a/coreutils/yes.c +++ b/coreutils/yes.c @@ -14,29 +14,28 @@ * Size reductions and removed redundant applet name prefix from error messages. */ -#include -#include -#include "busybox.h" +#include "libbb.h" +/* This is a NOFORK applet. Be very careful! */ + +int yes_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; int yes_main(int argc, char **argv) { - static const char fmt_str[] = " %s"; - const char *fmt; - char **first_arg; + char **pp; - *argv = "y"; + argv[0] = (char*)"y"; if (argc != 1) { ++argv; } - first_arg = argv; do { - fmt = fmt_str + 1; - do { - bb_printf(fmt, *argv); - fmt = fmt_str; - } while (*++argv); - argv = first_arg; + pp = argv; + while (1) { + fputs(*pp, stdout); + if (!*++pp) + break; + putchar(' '); + } } while (putchar('\n') != EOF); bb_perror_nomsg_and_die();