On 17 February 2016 at 16:39, Eli Zaretskii wrote: > > From: Marcin Borkowski > > Date: Wed, 17 Feb 2016 16:35:04 +0100 > > Cc: 18236@debbugs.gnu.org > > > > On 2014-08-10, at 17:34, Reuben Thomas wrote: > > > > > I'm using Emacs 24.3. Consider the following two files: > > > > > > foo: > > > ----cut here---- > > > This is a small test file. > > > It has DOS line endings. > > > ----cut here---- > > > > > > bar: > > > ----cut here---- > > > This is a small test file. > > > It too has DOS line endings. > > > ----cut here---- > > > > > > Save them with DOS line endings, and > > > > > > diff foo bar > foo.patch > > > cp foo bar > > > > > > Visit foo.patch. When I do that, each line ends in ^M. > > > > > > Now, in the patch buffer, M-x diff-apply-hunk. Note that the ^Ms have > been added to the lines. Writing the buffer and examination with "hd" > reveals that each line now ends > > > \r\r\n. > > > > > > It seems what's happened here is that diff-mode doesn't try to > diagnose the character encoding of the patch file. > > > > Hi all, > > > > confirmed on GNU Emacs 25.1.50.2 (commit 4ccd268). > > When I try doing that, I get an error message. ​I just repeated the recipe, now in Emacs 24.4. It worked as described.​ > Is the recipe > ​ ​ > complete? ​Seems so.​ > Also, does this happen on a Posix host or on a Windows box? > ​On a GNU/Linux system.​ > If the former, I won't expect each line in the patch file to end with > a ^M, only the lines that came from the files being diffed. > Sorry, I was imprecise. ​You're quite right, only the lines that come from the files being diffed end in ^M.​ However, the original problem ​remains, as stated: after applying the patch hunk, the patched lines of the resultant file "bar" end \r\r\n. -- http://rrt.sc3d.org