mercurial/patch.py
changeset 35383 82c3762349ac
parent 35366 dce761558329
child 35582 72b91f905065
--- a/mercurial/patch.py	Sun Dec 10 00:16:11 2017 -0500
+++ b/mercurial/patch.py	Mon Dec 11 22:38:31 2017 +0900
@@ -46,6 +46,7 @@
 
 gitre = re.compile(br'diff --git a/(.*) b/(.*)')
 tabsplitter = re.compile(br'(\t+|[^\t]+)')
+_nonwordre = re.compile(br'([^a-zA-Z0-9_\x80-\xff])')
 
 PatchError = error.PatchError
 
@@ -2578,7 +2579,7 @@
         raise error.ProgrammingError("Case not expected, operation = %s" %
                                      operation)
 
-    s = difflib.ndiff(re.split(br'(\W)', s2), re.split(br'(\W)', s1))
+    s = difflib.ndiff(_nonwordre.split(s2), _nonwordre.split(s1))
     for part in s:
         if part[0] in operation_skip or len(part) == 2:
             continue