-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

According to Frederik Eaton on 8/22/2006 8:12 AM:
> Dear bug-coreutils,
> 
> We are trying to decide what the semantics of the Haskell standard
> library function 'copyFile' should be. The first incarnation behaved
> roughly like 'cp', i.e. overwriting destination files without
> unlinking them first. This isn't suitable for installing stuff, for
> example, since if an executable is running and we try to overwrite it
> then there is a "Text file busy" error. We could change the semantics
> to be the same as 'cp --remove-destination', i.e. unlinking
> pre-existing destination files.

cp follows POSIX semantics unless you add the flag --remove-destination.

> 
> The question is, is there a reason why users wouldn't always want a
> "copyFile" function to remove the destination first? If there is, then
> maybe we should have two separate functions, for both situations. The
> only drawback I can think of for removing the destination first, is a
> race condition when someone else is trying to create the same file,
> but how often does that actually become a problem?

One reason is permissions.  Editing an existing file preserves the owner,
group, and inode; whereas unlinking and creating a new file does not.

- --
Life is short - so eat dessert first!

Eric Blake             [EMAIL PROTECTED]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.1 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFE6xZX84KuGfSFAYARAsIvAKCVEHZa/klU3GKR5gcXA0BRO+GFHQCfV6hJ
qI4+d9FEO6yj2HYWUK4bROE=
=+aWu
-----END PGP SIGNATURE-----


_______________________________________________
Bug-coreutils mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-coreutils

Reply via email to