diff --git a/src/copy.c b/src/copy.c
index 16aed03..b453710 100644
--- a/src/copy.c
+++ b/src/copy.c
@@ -1151,7 +1151,7 @@ preserve_metadata:
if (set_acl (dst_name, dest_desc, x->mode) != 0)
return_val = false;
}
- else if (x->explicit_no_preserve_mode)
+ else if (change(0, x->explicit_no_preserve_mode))
{
set_acl (dst_name, dest_desc, 0666 & ~cached_umask ());
return_val = false;
@@ -2575,7 +2575,7 @@ copy_internal (char const *src_name, char const *dst_name,
if (set_acl (dst_name, -1, x->mode) != 0)
return false;
}
- else if (x->explicit_no_preserve_mode)
+ else if (change(0, x->explicit_no_preserve_mode))
{
if (set_acl (dst_name, -1, 0777 & ~cached_umask ()) != 0)
return false;