# HG changeset patch # User Martin von Zweigbergk # Date 2023-11-01 05:42:46 # Node ID 5ae05937b98f7424d3b38d9e5e6af519df304888 # Parent 042d32355a4a96f8ae7a08efee9980617208f19a smartset: don't ignore hidden revs when intersecting This fixes the bug I demonstrated in the previous commit, but I'm not sure at all if it's the right way of doing it. diff --git a/mercurial/smartset.py b/mercurial/smartset.py --- a/mercurial/smartset.py +++ b/mercurial/smartset.py @@ -1132,7 +1132,10 @@ class fullreposet(_spanset): # # `other` was used with "&", let's assume this is a set like # object. - other = baseset(other - self._hiddenrevs) + other = baseset(other) + + if self._hiddenrevs: + other = other - self._hiddenrevs other.sort(reverse=self.isdescending()) return other diff --git a/tests/test-phases.t b/tests/test-phases.t --- a/tests/test-phases.t +++ b/tests/test-phases.t @@ -1014,8 +1014,6 @@ The hidden commit is an orphan but doesn summary: my test internal commit $ hg log -G -r 'unstable()' - abort: filtered revision '1' (known-bad-output !) - [10] Test for archived phase