mirror of
https://git.freebsd.org/src.git
synced 2026-01-16 23:02:24 +00:00
chflags(1): obey siginfo request on chflagsat(2) failure
(cherry picked from commit 2954af09f1)
This commit is contained in:
parent
19d960cedd
commit
dc30b2841b
1 changed files with 8 additions and 2 deletions
|
|
@ -74,7 +74,7 @@ main(int argc, char *argv[])
|
|||
u_long clear, newflags, set;
|
||||
long val;
|
||||
int Hflag, Lflag, Rflag, fflag, hflag, vflag, xflag;
|
||||
int ch, fts_options, oct, rval;
|
||||
int ch, e, fts_options, oct, rval;
|
||||
char *flags, *ep;
|
||||
|
||||
Hflag = Lflag = Rflag = fflag = hflag = vflag = xflag = 0;
|
||||
|
|
@ -196,10 +196,16 @@ main(int argc, char *argv[])
|
|||
continue;
|
||||
if (chflagsat(AT_FDCWD, p->fts_accpath, newflags,
|
||||
atflag) == -1) {
|
||||
e = errno;
|
||||
if (!fflag) {
|
||||
warn("%s", p->fts_path);
|
||||
warnc(e, "%s", p->fts_path);
|
||||
rval = 1;
|
||||
}
|
||||
if (siginfo) {
|
||||
(void)printf("%s: %s\n", p->fts_path,
|
||||
strerror(e));
|
||||
siginfo = 0;
|
||||
}
|
||||
} else if (vflag || siginfo) {
|
||||
(void)printf("%s", p->fts_path);
|
||||
if (vflag > 1 || siginfo)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue