[libcxx-commits] [PATCH] D60880: [libc++] Use COPYFILE_CLONE from the macOS copyfile(3) API to support APFS clones

Eric Fiselier via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Sat Apr 27 22:12:21 PDT 2019


EricWF added a comment.

> I'm not sure this change is valid because now we're also copying things like attributes, ACL and even the stat of the file.

That seems to be the correct behavior. According to [fs.op.copy.file]

>   copy the contents and attributes of the file `from` resolves to, to the file `to` resolves to [...]



In D60880#1472274 <https://reviews.llvm.org/D60880#1472274>, @aprantl wrote:

> I found one more quirks while debugging why https://reviews.llvm.org/D60802 caused a clang modules crash reproducer test to fail:
>
> COPYFILE_DATA will succeed if the destination file already exists, whereas COPYFILE_CLONE returns EEXIST.


That shouldn't be the case for `fcopyfile`.  Since the `dest` file is specified by a file descriptor.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D60880/new/

https://reviews.llvm.org/D60880





More information about the libcxx-commits mailing list