Show More
@@ -66,6 +66,8 b' class dirstate(object):' | |||||
66 | syntaxes = {'re': 'relre:', 'regexp': 'relre:', 'glob': 'relglob:'} |
|
66 | syntaxes = {'re': 'relre:', 'regexp': 'relre:', 'glob': 'relglob:'} | |
67 | def parselines(fp): |
|
67 | def parselines(fp): | |
68 | for line in fp: |
|
68 | for line in fp: | |
|
69 | if not line.endswith('\n'): | |||
|
70 | line += '\n' | |||
69 | escape = False |
|
71 | escape = False | |
70 | for i in xrange(len(line)): |
|
72 | for i in xrange(len(line)): | |
71 | if escape: escape = False |
|
73 | if escape: escape = False |
@@ -1,6 +1,25 b'' | |||||
1 | #!/bin/sh |
|
1 | #!/bin/sh | |
2 |
|
2 | |||
3 | hg init |
|
3 | hg init | |
|
4 | ||||
|
5 | # Test issue 562: .hgignore requires newline at end | |||
|
6 | touch foo | |||
|
7 | touch bar | |||
|
8 | touch baz | |||
|
9 | cat > makeignore.py <<EOF | |||
|
10 | f = open(".hgignore", "w") | |||
|
11 | f.write("ignore\n") | |||
|
12 | f.write("foo\n") | |||
|
13 | # No EOL here | |||
|
14 | f.write("bar") | |||
|
15 | f.close() | |||
|
16 | EOF | |||
|
17 | ||||
|
18 | python makeignore.py | |||
|
19 | echo % should display baz only | |||
|
20 | hg status | |||
|
21 | rm foo bar baz .hgignore makeignore.py | |||
|
22 | ||||
4 | touch a.o |
|
23 | touch a.o | |
5 | touch a.c |
|
24 | touch a.c | |
6 | touch syntax |
|
25 | touch syntax |
General Comments 0
You need to be logged in to leave comments.
Login now