patch(1) can't patch files

Florian Weimer fw@deneb.cygnus.argh.org
Sat Sep 18 09:14:00 GMT 1999


I've received a report that GNU patch doesn't work correctly under
Cygwin-b20 if the directory for temporary files and the files to patch
aren't on the same drive (this behavior was observed under Windows 95):

patch -p1 < gnus-0.95-0.96.diff 
patching file `lisp/ChangeLog'
patch: **** can't rename `C:\WINDOWS\TEMP/po001004' to
`lisp/ChangeLog' : File exists

GNU patch contains its own implementation of rename() which uses hard
links (at least on Unix) and a copy-and-delete fallback mechanism
for cross-filesystem renames.  Obviously, this implementation of
rename() expects certain error values from link() &c which the cygwin
implementation doesn't provide.

(Unfortunately, I don't have working installation of cygwin-b20 myself,
which means I can't give more information here or do additional testing.)

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com



More information about the Cygwin mailing list