acl: Align return values of copy_acl and qcopy_acl.
authorBruno Haible <bruno@clisp.org>
Wed, 11 Jan 2012 00:51:25 +0000 (01:51 +0100)
committerBruno Haible <bruno@clisp.org>
Thu, 12 Jan 2012 00:29:13 +0000 (01:29 +0100)
* lib/copy-acl.c (copy_acl): Return the same value as qcopy_acl,
maybe < -1.

ChangeLog
lib/copy-acl.c

index 2b0dfef..ec288e5 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2012-01-10  Bruno Haible  <bruno@clisp.org>
+
+       acl: Align return values of copy_acl and qcopy_acl.
+       * lib/copy-acl.c (copy_acl): Return the same value as qcopy_acl,
+       maybe < -1.
+
 2012-01-11  Eric Blake  <eblake@redhat.com>
 
        strptime: silence gcc warnings
index 195da98..a318396 100644 (file)
@@ -621,7 +621,8 @@ qcopy_acl (const char *src_name, int source_desc, const char *dst_name,
    If access control lists are not available, fchmod the target file to
    MODE.  Also sets the non-permission bits of the destination file
    (S_ISUID, S_ISGID, S_ISVTX) to those from MODE if any are set.
-   Return 0 if successful, otherwise output a diagnostic and return -1.  */
+   Return 0 if successful, otherwise output a diagnostic and return a
+   negative error code.  */
 
 int
 copy_acl (const char *src_name, int source_desc, const char *dst_name,
@@ -632,13 +633,14 @@ copy_acl (const char *src_name, int source_desc, const char *dst_name,
     {
     case -2:
       error (0, errno, "%s", quote (src_name));
-      return -1;
+      break;
 
     case -1:
       error (0, errno, _("preserving permissions for %s"), quote (dst_name));
-      return -1;
+      break;
 
     default:
-      return 0;
+      break;
     }
+  return ret;
 }