# HG changeset patch # User Nicholas Riley # Date 2011-07-12 16:06:11 # Node ID abf915f537be17225b3cabc3a0ecccc50f56b373 # Parent 6ed2a449cb5b9f78924b0723dcb082c994bdafa8 eol: ignore IOError from deleted files in commitctx A Mercurial repo signals a file is deleted by raising IOError when the file's data is requested. This IOError is normally caught by localrepository.commitctx. With the eol extension enabled and EOL mappings in place, the eolrepo subclass should ignore IOError because a deleted file has no line endings to process. This issue exhibited itself when performing an incremental hg convert of a revision with deleted files to a repo with an existing .hgeol file. diff --git a/hgext/eol.py b/hgext/eol.py --- a/hgext/eol.py +++ b/hgext/eol.py @@ -318,7 +318,10 @@ def reposetup(ui, repo): for f in sorted(ctx.added() + ctx.modified()): if not self._eolfile(f): continue - data = ctx[f].data() + try: + data = ctx[f].data() + except IOError: + continue if util.binary(data): # We should not abort here, since the user should # be able to say "** = native" to automatically