# HG changeset patch # User Brendan Cully # Date 1271044795 25200 # Node ID 4fb1bafd43e7e829dec0886aff8b10f643c54470 # Parent f0bfe42c7b1f007757dd606bcbc3a3a238910750# Parent 196908117c274aa1604cc5afcfd93ca8c8359b52 Merge with stable diff -r f0bfe42c7b1f -r 4fb1bafd43e7 mercurial/patch.py --- a/mercurial/patch.py Fri Apr 09 17:23:37 2010 -0500 +++ b/mercurial/patch.py Sun Apr 11 20:59:55 2010 -0700 @@ -47,6 +47,9 @@ if inheader and line[0] in (' ', '\t'): # continuation return True + if line[0] in (' ', '-', '+'): + # diff line - don't check for header pattern in there + return False l = line.split(': ', 1) return len(l) == 2 and ' ' not in l[0] diff -r f0bfe42c7b1f -r 4fb1bafd43e7 tests/test-import --- a/tests/test-import Fri Apr 09 17:23:37 2010 -0500 +++ b/tests/test-import Sun Apr 11 20:59:55 2010 -0700 @@ -474,3 +474,24 @@ hg sum hg diff --git -c tip cd .. + +echo '% diff lines looking like headers' +hg init difflineslikeheaders +cd difflineslikeheaders +echo a >a +echo b >b +echo c >c +hg ci -Am1 + +echo "key: value" >>a +echo "key: value" >>b +echo "foo" >>c +hg ci -m2 + +hg up -C 0 +hg diff --git -c1 >want +hg diff -c1 | hg import --no-commit - +hg diff --git >have +diff want have +cd .. + diff -r f0bfe42c7b1f -r 4fb1bafd43e7 tests/test-import.out --- a/tests/test-import.out Fri Apr 09 17:23:37 2010 -0500 +++ b/tests/test-import.out Sun Apr 11 20:59:55 2010 -0700 @@ -373,3 +373,9 @@ diff --git a/src/cmd/gc/mksys.bash b/src/cmd/gc/mksys.bash old mode 100644 new mode 100755 +% diff lines looking like headers +adding a +adding b +adding c +3 files updated, 0 files merged, 0 files removed, 0 files unresolved +applying patch from stdin