svn commit: r196773 - head/bin/ls
Edward Tomasz Napierala
trasz at FreeBSD.org
Wed Sep 2 20:50:40 UTC 2009
Author: trasz
Date: Wed Sep 2 20:50:39 2009
New Revision: 196773
URL: http://svn.freebsd.org/changeset/base/196773
Log:
Fix regression introduced in r196712 - the 'name' string needs
to be rewritten for each file we want to check ACL on. Without
this change, ls(1) would check only the ACL on the first file
to list.
Modified:
head/bin/ls/print.c
Modified: head/bin/ls/print.c
==============================================================================
--- head/bin/ls/print.c Wed Sep 2 17:33:51 2009 (r196772)
+++ head/bin/ls/print.c Wed Sep 2 20:50:39 2009 (r196773)
@@ -623,15 +623,19 @@ aclmode(char *buf, const FTSENT *p)
S_ISWHT(p->fts_statp->st_mode))
return;
+ if (previous_dev == p->fts_statp->st_dev && supports_acls == 0)
+ return;
+
+ if (p->fts_level == FTS_ROOTLEVEL)
+ snprintf(name, sizeof(name), "%s", p->fts_name);
+ else
+ snprintf(name, sizeof(name), "%s/%s",
+ p->fts_parent->fts_accpath, p->fts_name);
+
if (previous_dev != p->fts_statp->st_dev) {
previous_dev = p->fts_statp->st_dev;
supports_acls = 0;
- if (p->fts_level == FTS_ROOTLEVEL)
- snprintf(name, sizeof(name), "%s", p->fts_name);
- else
- snprintf(name, sizeof(name), "%s/%s",
- p->fts_parent->fts_accpath, p->fts_name);
ret = lpathconf(name, _PC_ACL_NFS4);
if (ret > 0) {
type = ACL_TYPE_NFS4;
More information about the svn-src-head
mailing list