diff --git a/c/unlink.c b/c/unlink.c index f02952b..33fe39e 100644 --- a/c/unlink.c +++ b/c/unlink.c @@ -1,21 +1,27 @@ #include +#include #include #include #include -int main(int argc, char** argv) { +int main(int argc, char **argv) { if (argc < 2) { - fprintf(stderr, "Not enough arguments."); + error(1, 0, "Not enough arguments."); + } + + short has_errored = 0; + + for (int i = 1; i < argc; i++) { + if (unlink(argv[i]) == -1) { + has_errored = 1; + error(0, errno, "%s", argv[i]); + } + } + + if (has_errored) { exit(1); } - for (int i = 1; i < argc; i++) { - int code = unlink(argv[i]); - if (code == -1) { - perror(argv[0]); - exit(1); - } - } return 0; }