# HG changeset patch # User Laurens Holst # Date 1324488015 -3600 # Node ID e86dd8dfdea0492b3e7106ab47f4b0a4e12b94b6 # Parent 8edd9f2c7b571dadf0aafe3702286803fc2be761 context: add isbinary function diff -r 8edd9f2c7b57 -r e86dd8dfdea0 mercurial/context.py --- a/mercurial/context.py Tue Dec 27 21:12:09 2011 +0100 +++ b/mercurial/context.py Wed Dec 21 18:20:15 2011 +0100 @@ -372,6 +372,12 @@ def size(self): return self._filelog.size(self._filerev) + def isbinary(self): + try: + return util.binary(self.data()) + except IOError: + return False + def cmp(self, fctx): """compare with other file context diff -r 8edd9f2c7b57 -r e86dd8dfdea0 mercurial/filemerge.py --- a/mercurial/filemerge.py Tue Dec 27 21:12:09 2011 +0100 +++ b/mercurial/filemerge.py Wed Dec 21 18:20:15 2011 +0100 @@ -142,18 +142,12 @@ f.close() return name - def isbin(ctx): - try: - return util.binary(ctx.data()) - except IOError: - return False - if not fco.cmp(fcd): # files identical? return None ui = repo.ui fd = fcd.path() - binary = isbin(fcd) or isbin(fco) or isbin(fca) + binary = fcd.isbinary() or fco.isbinary() or fca.isbinary() symlink = 'l' in fcd.flags() + fco.flags() tool, toolpath = _picktool(repo, ui, fd, binary, symlink) ui.debug("picked tool '%s' for %s (binary %s symlink %s)\n" %