Mercurial > hg
view mercurial/pure/diffhelpers.py @ 20502:7648e9aef6ee
discovery: make "note: unsynced remote changes!" less serious than a warning
This situation is not necessarily a problem and do not deserve a warning. It is
just some information that can guide the user in understanding what is going
on.
Making it 'debug' would usually not give the hint when it is relevant so we
make it a 'status' message.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Fri, 07 Feb 2014 17:24:12 +0100 |
parents | 4f8067c94729 |
children | 80214358ac88 |
line wrap: on
line source
# diffhelpers.py - pure Python implementation of diffhelpers.c # # Copyright 2009 Matt Mackall <mpm@selenic.com> and others # # This software may be used and distributed according to the terms of the # GNU General Public License version 2 or any later version. 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] # tolerate CRLF in last line if l.endswith('\r\n'): hline = l[:-2] else: hline = l[:-1] c = hline[0] if c in " +": b[-1] = hline[1:] if c in " -": 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