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] |
I think so. The file file-lf.txt has CRLF line endings after patching, otherwise everything is fine. But this is just one of the tests for GnuWin32. Please run all-cmd-tests.cmd and then checkresults.sh (in whatever sh you have).The result is that the only option that seems to be able to handle the mix of line endings is Cygwin using DOS line endings with patch 2.5.9. (The only thing that did not work was preservation of line endings in the patched file, but that seems to be a small problem here.)
To see more of the result see here: http://ourcomments.org/GNU/patchcrlf/readme.txt
I don't use Cygwin, but I tried your tests with the GnuWin32 ports of Diff and Patch (and `cat' from GnuWin32 port of Coreutils), and the tests worked for me as I expected. Here are the results:
D:\gnu\patches>gnuwin32-test.cmd D:\gnu\patches\tempGNUWIN32
D:/usr/bin/diff.EXE D:/usr/bin/patch.EXE
patching file file-lf.txt patching file file-cr-lf.txt
**** PATCHED file-cr-lf.txt: ******** This is a test comparing two files^M with different line endings.^M the name of this file is file-lf.txt^M and it has lf line ending.^M No this is diffed against the other file^M using GnuWin32 diff.^M
**** PATCHED file-lf.txt: *********** This is a test comparing two files^M with different line endings.^M the name of this file is file-cr-lf.txt^M and it has cr-lf line ending.^M No this is diffed against the other file^M using GnuWin32 diff.^M
**** THE PATCH: *********** 3,4c3,4^M < the name of this file is file-lf.txt^M < and it has lf line ending.^M ---^M > the name of this file is file-cr-lf.txt^M > and it has cr-lf line ending.^M
D:\gnu\patches>
I think this is the result you expected. Is that true?
Thanks for the suggestion, but maybe you are misunderstanding me. I want this to work for all the test cases, not just for one of them.If you wanted the patched file-lf.txt to retain its Unix-style EOL format, then gnuwun32-test.cmd should be modified to say
patch --binary file-lf.txt temp.diff
instead of
patch file-lf.txt temp.diff
and then Patch will remove the CR characters from the patch file
temp.diff and produce a LF-only EOLs:
The files on your site indicate that the GnuWin32 test failed, but IWhy do you think that? I have written in the readme.txt file what version of diff I believe am using. I have tried to be rather careful here.
think this is because you used a port of Diff that is not the GnuWin32
port.
(Btw, when I downloaded file-cr-lf.txt from your site byOh thanks! I forgot to upload this file as binary.
right-clicking on it and selecting "Save target as...", it wound up on
my machine with Unix-style LF-only EOLs. So I'm afraid some people
that will try your tests might get incorrect results if they are not
careful enough to convert file-cr-lf.txt to DOS EOL format first.
Caveat emptor!)
-- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |