diff --git a/mercurial/changelog.py b/mercurial/changelog.py --- a/mercurial/changelog.py +++ b/mercurial/changelog.py @@ -405,12 +405,6 @@ self.filteredrevs = frozenset() self._copiesstorage = opener.options.get(b'copies-storage') - def revs(self, start=0, stop=None): - """filtered version of revlog.revs""" - for i in super(changelog, self).revs(start, stop): - if i not in self.filteredrevs: - yield i - def _checknofilteredinrevs(self, revs): """raise the appropriate error if 'revs' contains a filtered revision diff --git a/mercurial/repoview.py b/mercurial/repoview.py --- a/mercurial/repoview.py +++ b/mercurial/repoview.py @@ -246,6 +246,12 @@ return filterediter() + def revs(self, start=0, stop=None): + """filtered version of revlog.revs""" + for i in super(filteredchangelog, self).revs(start, stop): + if i not in self.filteredrevs: + yield i + cl.__class__ = filteredchangelog return cl