foo*sum: report I/O errors, don't merely exit with 1.
authorDenys Vlasenko <vda.linux@googlemail.com>
Tue, 2 Jul 2013 17:11:01 +0000 (19:11 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Tue, 2 Jul 2013 17:11:01 +0000 (19:11 +0200)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
coreutils/md5_sha1_sum.c

index 92a4d44..b23c6c0 100644 (file)
@@ -151,7 +151,9 @@ static uint8_t *hash_file(const char *filename)
                        update(&context, in_buf, count);
                }
                hash_value = NULL;
-               if (count == 0) {
+               if (count < 0) {
+                       bb_perror_msg("can't read '%s'", filename);
+               else /* count == 0 */ {
                        final(&context, in_buf);
                        hash_value = hash_bin_to_hex(in_buf, hash_len);
                }