diff -r 6169d95dce3b -r 6614cac550ae mercurial/filelog.py --- a/mercurial/filelog.py Mon Apr 30 15:32:11 2018 -0700 +++ b/mercurial/filelog.py Thu Nov 30 21:19:46 2017 -0500 @@ -135,7 +135,9 @@ return False t = self.revision(node) m = revlog.parsemeta(t)[0] - if m and "copy" in m: + # copy and copyrev occur in pairs. In rare cases due to bugs, + # one can occur without the other. + if m and "copy" in m and "copyrev" in m: return (m["copy"], revlog.bin(m["copyrev"])) return False