diff mercurial/localrepo.py @ 7361:9fe97eea5510

linkrev: take a revision number rather than a hash
author Matt Mackall <mpm@selenic.com>
date Wed, 12 Nov 2008 15:19:14 -0600
parents b9bf36905b55
children 374a6b3ac623
line wrap: on
line diff
--- a/mercurial/localrepo.py	Thu Nov 13 10:11:32 2008 +0100
+++ b/mercurial/localrepo.py	Wed Nov 12 15:19:14 2008 -0600
@@ -1703,7 +1703,7 @@
                 # If a 'missing' manifest thinks it belongs to a changenode
                 # the recipient is assumed to have, obviously the recipient
                 # must have that manifest.
-                linknode = cl.node(mnfst.linkrev(n))
+                linknode = cl.node(mnfst.linkrev(mnfst.rev(n)))
                 if linknode in has_cl_set:
                     has_mnfst_set[n] = 1
             prune_parents(mnfst, has_mnfst_set, msng_mnfst_set)
@@ -1769,7 +1769,7 @@
             # assume the recipient must have, then the recipient must have
             # that filenode.
             for n in msngset:
-                clnode = cl.node(filerevlog.linkrev(n))
+                clnode = cl.node(filerevlog.linkrev(filerevlog.rev(n)))
                 if clnode in has_cl_set:
                     hasset[n] = 1
             prune_parents(filerevlog, hasset, msngset)
@@ -1892,9 +1892,8 @@
 
         def gennodelst(log):
             for r in log:
-                n = log.node(r)
-                if log.linkrev(n) in revset:
-                    yield n
+                if log.linkrev(r) in revset:
+                    yield log.node(r)
 
         def changed_file_collector(changedfileset):
             def collect_changed_files(clnode):
@@ -1905,7 +1904,7 @@
 
         def lookuprevlink_func(revlog):
             def lookuprevlink(n):
-                return cl.node(revlog.linkrev(n))
+                return cl.node(revlog.linkrev(revlog.rev(n)))
             return lookuprevlink
 
         def gengroup():