Mercurial > hg > toybox
changeset 313:d1ae502ee190
An error from an input file isn't fatal, keep reading remaining input files.
author | Rob Landley <rob@landley.net> |
---|---|
date | Fri, 15 Aug 2008 14:16:53 -0500 |
parents | 064fc1b8b7b1 |
children | 5ab9d0e5e0f8 |
files | toys/cat.c |
diffstat | 1 files changed, 7 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/toys/cat.c Fri Aug 15 14:14:10 2008 -0500 +++ b/toys/cat.c Fri Aug 15 14:16:53 2008 -0500 @@ -1,6 +1,6 @@ /* vi: set sw=4 ts=4: * - * hello.c - A hello world program. + * cat.c - copy inputs to stdout. * * Copyright 2006 Rob Landley <rob@landley.net> * @@ -14,6 +14,7 @@ help usage: cat [-u] [file...] Copy (concatenate) files to stdout. If no files listed, copy from stdin. + Filename "-" is a synonym for stdin. -u Copy one byte at a time (slow). */ @@ -25,8 +26,11 @@ int len, size=toys.optflags ? 1 : sizeof(toybuf); for (;;) { - len = xread(fd, toybuf, size); - if (len<0) toys.exitval = EXIT_FAILURE; + len = read(fd, toybuf, size); + if (len<0) { + perror_msg("%s",name); + toys.exitval = EXIT_FAILURE; + } if (len<1) break; xwrite(1, toybuf, len); }