diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index c32519efe..930aa79f2 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,7 @@ +2015-12-24 Corinna Vinschen + + * sec_acl.cc (aclfromtext32): Return missing aclcnt parameter. + 2015-12-24 Corinna Vinschen * sec_acl.cc (acltotext32): Use tmp_pathbuf rather than stack buffer. diff --git a/winsup/cygwin/sec_acl.cc b/winsup/cygwin/sec_acl.cc index 348f0bc6c..614bc50a5 100644 --- a/winsup/cygwin/sec_acl.cc +++ b/winsup/cygwin/sec_acl.cc @@ -1501,7 +1501,7 @@ permfromstr (char *perm) } extern "C" aclent_t * -aclfromtext32 (char *acltextp, int *) +aclfromtext32 (const char *acltextp, int *aclcnt) { if (!acltextp || strlen (acltextp) > NT_MAX_PATH) { @@ -1610,7 +1610,11 @@ aclfromtext32 (char *acltextp, int *) } aclent_t *aclp = (aclent_t *) malloc (pos * sizeof (aclent_t)); if (aclp) - memcpy (aclp, lacl, pos * sizeof (aclent_t)); + { + memcpy (aclp, lacl, pos * sizeof (aclent_t)); + if (aclcnt) + *aclcnt = pos; + } return aclp; }