Mercurial > hg > mercurial-crew-with-dirclash
comparison mercurial/mdiff.py @ 1723:fde8fb2cbede
Fix diff against an empty file (issue124) and add a test for this.
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Wed, 15 Feb 2006 14:22:16 +0100 |
parents | 3b1b44b917f4 |
children | 441ea218414e |
comparison
equal
deleted
inserted
replaced
1722:681c5c211b92 | 1723:fde8fb2cbede |
---|---|
16 if not a and not b: return "" | 16 if not a and not b: return "" |
17 epoch = util.datestr((0, 0)) | 17 epoch = util.datestr((0, 0)) |
18 | 18 |
19 if not text and (util.binary(a) or util.binary(b)): | 19 if not text and (util.binary(a) or util.binary(b)): |
20 l = ['Binary file %s has changed\n' % fn] | 20 l = ['Binary file %s has changed\n' % fn] |
21 elif a == None: | 21 elif not a: |
22 b = b.splitlines(1) | 22 b = b.splitlines(1) |
23 l1 = "--- %s\t%s\n" % ("/dev/null", epoch) | 23 if a is None: |
24 l1 = "--- %s\t%s\n" % ("/dev/null", epoch) | |
25 else: | |
26 l1 = "--- %s\t%s\n" % ("a/" + fn, ad) | |
24 l2 = "+++ %s\t%s\n" % ("b/" + fn, bd) | 27 l2 = "+++ %s\t%s\n" % ("b/" + fn, bd) |
25 l3 = "@@ -0,0 +1,%d @@\n" % len(b) | 28 l3 = "@@ -0,0 +1,%d @@\n" % len(b) |
26 l = [l1, l2, l3] + ["+" + e for e in b] | 29 l = [l1, l2, l3] + ["+" + e for e in b] |
27 elif b == None: | 30 elif not b: |
28 a = a.splitlines(1) | 31 a = a.splitlines(1) |
29 l1 = "--- %s\t%s\n" % ("a/" + fn, ad) | 32 l1 = "--- %s\t%s\n" % ("a/" + fn, ad) |
30 l2 = "+++ %s\t%s\n" % ("/dev/null", epoch) | 33 if b is None: |
34 l2 = "+++ %s\t%s\n" % ("/dev/null", epoch) | |
35 else: | |
36 l2 = "+++ %s\t%s\n" % ("b/" + fn, bd) | |
31 l3 = "@@ -1,%d +0,0 @@\n" % len(a) | 37 l3 = "@@ -1,%d +0,0 @@\n" % len(a) |
32 l = [l1, l2, l3] + ["-" + e for e in a] | 38 l = [l1, l2, l3] + ["-" + e for e in a] |
33 else: | 39 else: |
34 al = a.splitlines(1) | 40 al = a.splitlines(1) |
35 bl = b.splitlines(1) | 41 bl = b.splitlines(1) |