https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=c14215de386c5e03195c2218a773a32cd4694ccc

commit c14215de386c5e03195c2218a773a32cd4694ccc
Author: Corinna Vinschen <[email protected]>
Date:   Thu Apr 16 22:25:23 2015 +0200

    Fix setting saw_group_obj flag
    
            * sec_acl.cc (get_posix_access): Only set saw_group_obj flag if we 
saw
            the ACCESS_ALLOWED_ACE.
    
    Signed-off-by: Corinna Vinschen <[email protected]>

Diff:
---
 winsup/cygwin/ChangeLog  | 5 +++++
 winsup/cygwin/sec_acl.cc | 3 ++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 9ec866f..bd5ea55 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,10 @@
 2015-04-16  Corinna Vinschen  <[email protected]>
 
+       * sec_acl.cc (get_posix_access): Only set saw_group_obj flag if we saw
+       the ACCESS_ALLOWED_ACE.
+
+2015-04-16  Corinna Vinschen  <[email protected]>
+
        * fhandler_disk_file.cc (fhandler_disk_file::fchmod): Deliberatly
        set GROUP_OBJ and CLASS_OBJ perms to new group perms.  Add comment
        to explain why.
diff --git a/winsup/cygwin/sec_acl.cc b/winsup/cygwin/sec_acl.cc
index 58683cf..1855bb6 100644
--- a/winsup/cygwin/sec_acl.cc
+++ b/winsup/cygwin/sec_acl.cc
@@ -757,7 +757,8 @@ get_posix_access (PSECURITY_DESCRIPTOR psd,
                  if (owner_eq_group && !saw_group_obj)
                    {
                      type = GROUP_OBJ;
-                     saw_group_obj = true;
+                     if (ace->Header.AceType == ACCESS_ALLOWED_ACE_TYPE)
+                       saw_group_obj = true;
                    }
                  else
                    type = USER;

Reply via email to