This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

cp "skipping file ..., as it was replaced while being copied


All,
  I've been using a program/device driver that maps an FTP site to a
windows drive (yes I know about the Windows 7 way to do almost the
same thing; but I could only get to the share using windows explorer
and not cygwin) and things work pretty well except when I try to do a
simple cp file1.txt file2.txt I get the following:

/usr/bin/cp: skipping file `file1.txt', as it was replaced while being copied

I found the "offending" code in copy.c and commented it out and the
resulting excutable then "works".  I'm not sure why the inodes are the
same for both files.  I've never seen this w/ samba or "normal"
network shares; I guess it is a bug in the driver implementation
(however, mv file1.txt file2.txt, cat file1.txt > file2.txt, and other
commands I have tried work w/o issue).  I'm not sure what the code is
trying to protect against (once the open works shouldn't you be able
to trust the OS that the rest will work)??

I'm not reporting this as a bug as much as trying intellectual
curiosity of why the code is doing it.

Bill

diff -u copy.c~ copy.c
--- copy.c~ 2013-03-28 13:48:47.923995100 -0500
+++ copy.c 2013-03-29 08:49:03.795004400 -0500
@@ -835,6 +835,7 @@

/* Compare the source dev/ino from the open file to the incoming,
    saved ones obtained via a previous call to stat. */
+#if 0
if (! SAME_INODE (*src_sb, src_open_sb))
  {
    error (0, 0,
@@ -843,7 +844,7 @@
    return_val = false;
    goto close_src_desc;
  }
-
+#endif
      /* The semantics of the following open calls are mandated
          by the specs for both cp and mv. */
      if (! *new_dst)

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]