Mail Archives: cygwin/1998/11/18/13:49:20
Mumit Khan wrote:
>
> Earnie Boyd <earnie_boyd AT yahoo DOT com> writes:
> > ---"Henry S. Warren, Jr." <hank AT watson DOT ibm DOT com> wrote:
> > >
> > > If you copy, using cp, a file to itself, and the target and source
> > files
> > > differ in capitalization, then the content of the file is wiped out;
> > it
> > > becomes a file of 0-length. Example: "cp hilbert.c hilbert.C" trashes
> > > file hilbert.c.
> > > The Win95 "copy" command gives the error message "File cannot be
> > > copied onto itself" in this situation (much preferable)
> >
> > Hmm. It used to do it that way in b19. Is it possible that inode or
> > stat routine has become buggy?
>
> Are you by any chance doing this on a SMB mounted filesystem? I remember
> playing with this a while back, and it worked on FAT and NTFS, but not
> on SAMBA disk (didn't try SMB disks from non-SAMBA server, such as NT).
>
> I believe that the problem is in MoveFileEx (WIN API), which doesn't do
> the right thing. However, the rename in MSVC runtime does somehow do
> it correctly on all filesystems, so it's doing something more than using
> MoveFileEx. (fyi, mv uses the rename runtime routine in winsup that in
> turn uses MoveFileEx to do the actual renaming).
Isn't this the same as the win32 `cat foo >foo' problem?
I find it hard to believe that this is related to a bug in
MoveFileEx, since MoveFileEx really just calls the driver for
the file-system in question (I would imagine) to perform the
actual disk/filesystem operations. At least on my FAT system,
running b19, cp destroys the file if it is the same file but
the names differ in capitalization.
Anders Norlander
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request AT cygnus DOT com" with one line of text: "help".
- Raw text -