cksum, printenv: report errors via exitcode

function                                             old     new   delta
cksum_main                                           296     315     +19
printenv_main                                         74      86     +12
This commit is contained in:
Denis Vlasenko 2008-11-11 22:59:41 +00:00
parent 0d8736772d
commit f91f14d221
2 changed files with 10 additions and 3 deletions

View File

@ -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);
}

View File

@ -13,6 +13,8 @@
int printenv_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
int printenv_main(int argc UNUSED_PARAM, char **argv)
{
int exit_code = EXIT_SUCCESS;
/* no variables specified, show whole env */
if (!argv[1]) {
int e = 0;
@ -26,8 +28,10 @@ int printenv_main(int argc UNUSED_PARAM, char **argv)
env = getenv(arg);
if (env)
puts(env);
else
exit_code = EXIT_FAILURE;
}
}
fflush_stdout_and_exit(EXIT_SUCCESS);
fflush_stdout_and_exit(exit_code);
}