Fixed the bug from the previous revision.

``chown -h owner symlink'' did not set the symlink's owner
if the file the symlink points to already had that owner:

# ls -l alink afile
-rw-r--r--  1 nobody  ru  0 May 31 14:14 afile
lrwxr-xr-x  1 root    ru  5 May 31 14:14 alink -> afile
# ./chown -h -v nobody alink
# ls -l alink afile
-rw-r--r--  1 nobody  ru  0 May 31 14:14 afile
lrwxr-xr-x  1 root    ru  5 May 31 14:14 alink -> afile

Similarly for chgrp(1) and chmod(1).
This commit is contained in:
Ruslan Ermilov 2001-05-31 11:47:20 +00:00
parent 7ed3b855bb
commit 01b4e93eff
2 changed files with 2 additions and 2 deletions

View File

@ -148,7 +148,7 @@ done: argv += optind;
fts_options |= FTS_LOGICAL;
}
} else
fts_options = FTS_LOGICAL;
fts_options = hflag ? FTS_PHYSICAL : FTS_LOGICAL;
if (hflag)
change_mode = lchmod;

View File

@ -133,7 +133,7 @@ main(argc, argv)
fts_options |= FTS_LOGICAL;
}
} else
fts_options = FTS_LOGICAL;
fts_options = hflag ? FTS_PHYSICAL : FTS_LOGICAL;
uid = gid = -1;
if (ischown) {