diff --git a/gnulib b/gnulib index ee0bc6953..6a018d049 160000 --- a/gnulib +++ b/gnulib @@ -1 +1 @@ -Subproject commit ee0bc695303775da5026091a65e8ec2b764f4a26 +Subproject commit 6a018d0492239d01c2cc8fd56a1acec4d6fcd44d diff --git a/src/ls.c b/src/ls.c index 317a641ad..6ff0f410f 100644 --- a/src/ls.c +++ b/src/ls.c @@ -3501,9 +3501,10 @@ gobble_file (char const *name, enum filetype type, ino_t inode, if ((format == long_format) | print_scontext | check_capability) { struct aclinfo ai; - int n = file_has_aclinfo_cache (full_name, f, &ai, - ((do_deref ? ACL_SYMLINK_FOLLOW : 0) - | filetype_d_type[type])); + int aclinfo_flags = ((do_deref ? ACL_SYMLINK_FOLLOW : 0) + | (print_scontext ? ACL_GET_SCONTEXT : 0) + | filetype_d_type[type]); + int n = file_has_aclinfo_cache (full_name, f, &ai, aclinfo_flags); bool have_acl = 0 < n; bool have_scontext = !ai.scontext_err; f->acl_type = (!have_scontext && !have_acl