From fae467c2212ced8e82f5fa385d316445c8874941 Mon Sep 17 00:00:00 2001 From: Ricardo Branco Date: Mon, 29 Jan 2024 23:17:47 +0100 Subject: [PATCH] chflags(1): Fix -f option As stated in the man page, -f must not emit warning on error, and must not set the utility exit code. PR: 276723 Github PR: https://github.com/freebsd/freebsd-src/pull/1088 Reviewed by: imp, kib MFC after: 1 week --- bin/chflags/chflags.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/bin/chflags/chflags.c b/bin/chflags/chflags.c index b92d5b6439f5..0972240558df 100644 --- a/bin/chflags/chflags.c +++ b/bin/chflags/chflags.c @@ -182,9 +182,11 @@ main(int argc, char *argv[]) if (newflags == p->fts_statp->st_flags) continue; if (chflagsat(AT_FDCWD, p->fts_accpath, newflags, - atflag) == -1 && !fflag) { - warn("%s", p->fts_path); - rval = 1; + atflag) == -1) { + if (!fflag) { + warn("%s", p->fts_path); + rval = 1; + } } else if (vflag || siginfo) { (void)printf("%s", p->fts_path); if (vflag > 1 || siginfo)