# HG changeset patch
# User Pierre-Yves David <pierre-yves.david@octobus.net>
# Date 2019-11-21 22:25:08
# Node ID 5a012404503b38de90d055963045d277b64d44c8
# Parent  bfaf4c673becc361b55428bb426c09c942347256

localrepo: also fast past the parents of working copies parents

There are descent odds that they will be needed too. So we also cache and
fastpath them.

Differential Revision: https://phab.mercurial-scm.org/D7498

diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py
--- a/mercurial/localrepo.py
+++ b/mercurial/localrepo.py
@@ -1543,6 +1543,14 @@ class localrepository(object):
             pair = (rev, node)
             quick[rev] = pair
             quick[node] = pair
+            # also add the parents of the parents
+            for r in cl.parentrevs(rev):
+                if r == nullrev:
+                    continue
+                n = cl.node(r)
+                pair = (r, n)
+                quick[r] = pair
+                quick[n] = pair
         p1node = self.dirstate.p1()
         if p1node != nullid:
             quick[b'.'] = quick[p1node]
diff --git a/tests/test-repo-filters-tiptoe.t b/tests/test-repo-filters-tiptoe.t
--- a/tests/test-repo-filters-tiptoe.t
+++ b/tests/test-repo-filters-tiptoe.t
@@ -93,7 +93,6 @@ Getting working copy diff
   @@ -0,0 +1,1 @@
   +d
   $ hg diff --change .
-  debug.filters: computing revision filter for "visible"
   diff -r 05293e5dd8d1ae4f84a8520a11c6f97cad26deca -r c2932ca7786be30b67154d541a8764fae5532261 c
   --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
   +++ b/c	Thu Jan 01 00:00:00 1970 +0000
@@ -111,7 +110,6 @@ exporting the current changeset
 
   $ hg export
   exporting patch:
-  debug.filters: computing revision filter for "visible"
   # HG changeset patch
   # User test
   # Date 0 0