diff options
Diffstat (limited to 'coreutils/cksum.c')
-rw-r--r-- | coreutils/cksum.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/coreutils/cksum.c b/coreutils/cksum.c index 546532c..3a77c75 100644 --- a/coreutils/cksum.c +++ b/coreutils/cksum.c @@ -15,6 +15,7 @@ int cksum_main(int argc UNUSED_PARAM, char **argv) uint32_t crc; off_t length, filesize; int bytes_read; + int exit_code = EXIT_SUCCESS; uint8_t *cp; #if ENABLE_DESKTOP @@ -27,8 +28,10 @@ int cksum_main(int argc UNUSED_PARAM, char **argv) do { int fd = open_or_warn_stdin(*argv ? *argv : bb_msg_standard_input); - if (fd < 0) + if (fd < 0) { + exit_code = EXIT_FAILURE; continue; + } crc = 0; length = 0; @@ -60,5 +63,5 @@ int cksum_main(int argc UNUSED_PARAM, char **argv) crc, filesize, *argv); } while (*argv && *++argv); - fflush_stdout_and_exit(EXIT_SUCCESS); + fflush_stdout_and_exit(exit_code); } |