diff mercurial/context.py @ 36510:0a7c59a4c835 stable

annotate: do not poorly split lines at CR (issue5798) mdiff and lines(text) take only LF as a line separator, but str.splitlines() breaks our assumption. Use mdiff.splitnewlines() consistently. It's hard to read \r in tests, so \r is replaced with [CR]. I had to wrap sed by a shell function to silence check-code warning.
author Yuya Nishihara <yuya@tcha.org>
date Wed, 21 Feb 2018 21:14:05 +0900
parents 2a7e777c9eed
children b529e640015d
line wrap: on
line diff
--- a/mercurial/context.py	Fri Feb 23 17:57:04 2018 -0800
+++ b/mercurial/context.py	Wed Feb 21 21:14:05 2018 +0900
@@ -1121,7 +1121,8 @@
                 hist[f] = curr
                 del pcache[f]
 
-        return pycompat.ziplist(hist[base][0], hist[base][1].splitlines(True))
+        lineattrs, text = hist[base]
+        return pycompat.ziplist(lineattrs, mdiff.splitnewlines(text))
 
     def ancestors(self, followfirst=False):
         visit = {}