[PATCH stable] eol: fix crash when handling removed files
Mads Kiilerich
mads at kiilerich.com
Wed Oct 22 14:10:32 UTC 2014
# HG changeset patch
# User Mads Kiilerich <madski at unity3d.com>
# Date 1413987023 -7200
# Wed Oct 22 16:10:23 2014 +0200
# Branch stable
# Node ID 67e1820879c6287c8daccdd4a69ea93fed8433f3
# Parent c1ae0b2c1719f56b906472efea8b20ca0774c968
eol: fix crash when handling removed files
ci --amend would in some cases fail after 650b5b6e75ed failed to refactor the
eol extension too.
diff --git a/hgext/eol.py b/hgext/eol.py
--- a/hgext/eol.py
+++ b/hgext/eol.py
@@ -333,10 +333,10 @@ def reposetup(ui, repo):
for f in sorted(ctx.added() + ctx.modified()):
if not self._eolfile(f):
continue
- try:
- data = ctx[f].data()
- except IOError:
+ fctx = ctx[f]
+ if fctx is None:
continue
+ data = fctx.data()
if util.binary(data):
# We should not abort here, since the user should
# be able to say "** = native" to automatically
diff --git a/tests/test-eol.t b/tests/test-eol.t
--- a/tests/test-eol.t
+++ b/tests/test-eol.t
@@ -525,4 +525,19 @@ append a line without trailing newline
fourth
fifth
+amend of changesets with renamed/deleted files expose new code paths
+
+ $ hg mv a.txt b.txt
+ $ hg ci --amend -q
+ $ hg diff -c.
+ diff --git a/a.txt b/b.txt
+ rename from a.txt
+ rename to b.txt
+ --- a/a.txt
+ +++ b/b.txt
+ @@ -1,2 +1,3 @@
+ third
+ fourth
+ +fifth
+
$ cd ..
More information about the Mercurial-devel
mailing list