diff --git a/README.md b/README.md index ec6549d..4d863d7 100644 --- a/README.md +++ b/README.md @@ -6,12 +6,12 @@ Slow down input to output Install ------- - # make clean install + # make clean install Usage ----- - $ slow [-t usec] [-f] + $ slow [-t usec] [-f] -t usec : Define sleep between each bytes in micro-second. Default to 1 second. diff --git a/config.mk b/config.mk index bd994da..6a37cc8 100644 --- a/config.mk +++ b/config.mk @@ -11,9 +11,9 @@ INCS = LIBS = # flags -CPPFLAGS = -DVERSION=\"${VERSION}\" -D_XOPEN_SOURCE=500 +CPPFLAGS = -DVERSION=\"${VERSION}\" CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS} -LDFLAGS = -static -s ${LIBS} +LDFLAGS = -s ${LIBS} # compiler and linker CC = cc diff --git a/slow.c b/slow.c index d58f409..71b1fef 100644 --- a/slow.c +++ b/slow.c @@ -1,3 +1,4 @@ +#define _XOPEN_SOURCE 500 #include #include #include @@ -6,18 +7,12 @@ char *argv0; -static void usage(void); - -void -usage() -{ +void usage() { fprintf(stderr, "usage: %s [-t usec] [-f]\n", argv0); - exit(1); + exit(EXIT_FAILURE); } -int -main(int argc, char *argv[]) -{ +int main(int argc, char *argv[]) { char buffer; size_t nread; useconds_t useconds = 1000000; // default 1 second @@ -36,20 +31,18 @@ main(int argc, char *argv[]) while ((nread = fread(&buffer, 1, sizeof buffer, stdin)) > 0) { usleep(useconds); - if (fwrite(&buffer, 1, nread, stdout) != nread) { fprintf(stderr, "stdout: write error"); - exit(1); + exit(EXIT_FAILURE); } - - if (flush) + if (flush) { fflush(stdout); + } } - if (ferror(stdin)) { fprintf(stderr, "stdin: read error"); - exit(1); + exit(EXIT_FAILURE); } - return 0; + return EXIT_SUCCESS; }