##// END OF EJS Templates
resolve: add parenthesis around "no more unresolved files" message...
resolve: add parenthesis around "no more unresolved files" message This message may be confused with an error message. Adding parenthesis around it will make it more recognisable as an informative message.

File last commit:

r12387:4f8067c9 default
r21947:b081decd stable
Show More
diffhelpers.py
60 lines | 1.5 KiB | text/x-python | PythonLexer
Martin Geisler
pure Python implementation of diffhelpers.c
r7702 # diffhelpers.py - pure Python implementation of diffhelpers.c
#
# Copyright 2009 Matt Mackall <mpm@selenic.com> and others
#
Martin Geisler
updated license to be explicit about GPL version 2
r8225 # This software may be used and distributed according to the terms of the
Matt Mackall
Update license to GPLv2+
r10263 # GNU General Public License version 2 or any later version.
Martin Geisler
pure Python implementation of diffhelpers.c
r7702
def addlines(fp, hunk, lena, lenb, a, b):
while True:
todoa = lena - len(a)
todob = lenb - len(b)
num = max(todoa, todob)
if num == 0:
break
for i in xrange(num):
s = fp.readline()
c = s[0]
if s == "\\ No newline at end of file\n":
fix_newline(hunk, a, b)
continue
if c == "\n":
# Some patches may be missing the control char
# on empty lines. Supply a leading space.
s = " \n"
hunk.append(s)
if c == "+":
b.append(s[1:])
elif c == "-":
a.append(s)
else:
b.append(s[1:])
a.append(s)
return 0
def fix_newline(hunk, a, b):
l = hunk[-1]
Benoit Boissinot
fix test-mq-eol under --pure (mimic diffhelper.c behaviour)...
r10551 # tolerate CRLF in last line
if l.endswith('\r\n'):
hline = l[:-2]
else:
hline = l[:-1]
c = hline[0]
Martin Geisler
pure Python implementation of diffhelpers.c
r7702
Brodie Rao
cleanup: use x in (a, b) instead of x == a or x == b
r12387 if c in " +":
Benoit Boissinot
fix test-mq-eol under --pure (mimic diffhelper.c behaviour)...
r10551 b[-1] = hline[1:]
Brodie Rao
cleanup: use x in (a, b) instead of x == a or x == b
r12387 if c in " -":
Martin Geisler
pure Python implementation of diffhelpers.c
r7702 a[-1] = hline
hunk[-1] = hline
return 0
def testhunk(a, b, bstart):
alen = len(a)
blen = len(b)
if alen > blen - bstart:
return -1
for i in xrange(alen):
if a[i][1:] != b[i + bstart]:
return -1
return 0