From b2bc01b3c942b94c3def1bc4950e7fcbd8828b80 Mon Sep 17 00:00:00 2001 From: Syndamia Date: Sun, 8 Nov 2026 19:52:15 +0200 Subject: feat(chwrite): Print errors instead of just returning --- chwrite/chwrite.c | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'chwrite') diff --git a/chwrite/chwrite.c b/chwrite/chwrite.c index 395cf91..8aecf4b 100644 --- a/chwrite/chwrite.c +++ b/chwrite/chwrite.c @@ -53,12 +53,16 @@ main(int argc, char *argv[]) { for (i = 2; i < argc; ++i) { f = open(argv[i], 0); - if (f == -1) - return errno; + if (f == -1) { + perror("open"); + return 3; + } result = fstat(f, &fs); - if (result == -1) - return errno; + if (result == -1) { + perror("fstat"); + return 3; + } if (operation == '+') fs.st_mode |= S_IWUSR; @@ -66,8 +70,10 @@ main(int argc, char *argv[]) { fs.st_mode &= ~(S_IWUSR | S_IWGRP | S_IWOTH); result = fchmod(f, fs.st_mode); - if (result == -1) - return errno; + if (result == -1) { + perror("fchmod"); + return 3; + } } - return result; + return 0; } -- cgit v1.3.1-23-gd82d