Fix memory leak introduced on 2008-05-22.
authorBruno Haible <bruno@clisp.org>
Sun, 8 Jun 2008 02:51:21 +0000 (04:51 +0200)
committerBruno Haible <bruno@clisp.org>
Sun, 8 Jun 2008 02:51:21 +0000 (04:51 +0200)
ChangeLog
lib/set-mode-acl.c

index 6b4b68e..edce982 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2008-06-07  Bruno Haible  <bruno@clisp.org>
 
+       Fix memory leak introduced on 2008-05-22.
+       * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
+       use.
+
+2008-06-07  Bruno Haible  <bruno@clisp.org>
+
        * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
        to construct an empty ACL.
 
index cf59738..6780d23 100644 (file)
@@ -153,6 +153,8 @@ qset_acl (char const *name, int desc, mode_t mode)
     acl = acl_get_file (name, ACL_TYPE_ACCESS);
   if (acl)
     {
+      acl_free (acl);
+
       acl = acl_init (0);
       if (acl)
        {
@@ -176,6 +178,7 @@ qset_acl (char const *name, int desc, mode_t mode)
              errno = saved_errno;
              return -1;
            }
+         acl_free (acl);
        }
     }