diff options
| author | Mattias Andrée <maandree@kth.se> | 2017-01-11 09:11:51 +0100 |
|---|---|---|
| committer | Mattias Andrée <maandree@kth.se> | 2017-01-11 09:11:51 +0100 |
| commit | b7a82c980fe7e0c1f9029b55be97422428d65d5a (patch) | |
| tree | 67bedc856eb1f72a2daa8ef8347b904269b06df5 /src/vu-read-head.c | |
| parent | vu-crop: add -t (diff) | |
| download | blind-b7a82c980fe7e0c1f9029b55be97422428d65d5a.tar.gz blind-b7a82c980fe7e0c1f9029b55be97422428d65d5a.tar.bz2 blind-b7a82c980fe7e0c1f9029b55be97422428d65d5a.tar.xz | |
Clean up code
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'src/vu-read-head.c')
| -rw-r--r-- | src/vu-read-head.c | 29 |
1 files changed, 7 insertions, 22 deletions
diff --git a/src/vu-read-head.c b/src/vu-read-head.c index 2a22a77..b13ddb7 100644 --- a/src/vu-read-head.c +++ b/src/vu-read-head.c @@ -1,34 +1,22 @@ /* See LICENSE file for copyright and license details. */ -#include "arg.h" #include "stream.h" #include "util.h" #include <ctype.h> #include <unistd.h> -static void -usage(void) -{ - eprintf("usage: %s\n", argv0); -} +USAGE("") int main(int argc, char *argv[]) { char buf[2 + 3 * sizeof(size_t) + sizeof(((struct stream *)0)->pixfmt)]; char magic[] = {'\0', 'u', 'i', 'v', 'f'}; - char b; - char *p; + char b, *p; size_t i, ptr; ssize_t r; - ARGBEGIN { - default: - usage(); - } ARGEND; - - if (!argc) - usage(); + ENOFLAGS(!argc); for (ptr = 0; ptr < sizeof(buf);) { r = read(STDIN_FILENO, buf + ptr, 1); @@ -47,11 +35,11 @@ main(int argc, char *argv[]) r = read(STDIN_FILENO, &b, 1); if (r < 0) eprintf("read <stdin>:"); - if (!r || b != magic[i]) + if (r == 0 || b != magic[i]) goto bad_format; } - for (i = 0; i < 2; i++) { + for (i = 0; i < 3; i++) { if (!isdigit(*p)) goto bad_format; while (isdigit(*p)) p++; @@ -66,13 +54,10 @@ main(int argc, char *argv[]) if (p[-1] == ' ' || p[0] != '\n') goto bad_format; - for (i = 0; i < ptr; i += (size_t)r) { - r = write(STDOUT_FILENO, buf + i, ptr - i); - if (r < 0) - eprintf("write <stdout>:"); - } + ewriteall(STDOUT_FILENO, buf, ptr, "<stdout>"); return 0; bad_format: eprintf("<stdin>: file format not supported\n"); + return 0; } |
