mercurial/patch.py
changeset 5261 15a108ad7adb
parent 5260 0fc16031bb45
child 5403 477136fa6571
--- a/mercurial/patch.py
+++ b/mercurial/patch.py
@@ -1169,8 +1169,9 @@ def diff(repo, node1=None, node2=None, f
         if crev is None:
             crev = repo.changelog.count()
         orig = f
+        files = (f,)
         while crev > startrev:
-            if f in c.files():
+            if f in files:
                 try:
                     src = getfilectx(f, c).renamed()
                 except revlog.LookupError:
@@ -1180,6 +1181,7 @@ def diff(repo, node1=None, node2=None, f
             crev = c.parents()[0].rev()
             # try to reuse
             c = getctx(crev)
+            files = c.files()
         if f not in man:
             return None
         if f == orig: