mercurial/scmutil.py
changeset 37709 7b2955624777
parent 37708 8e8541610d85
child 37762 7269b87f817c
equal deleted inserted replaced
37708:8e8541610d85 37709:7b2955624777
   441     if node is None:
   441     if node is None:
   442         return
   442         return
   443     repo.changelog.rev(node)  # make sure node isn't filtered
   443     repo.changelog.rev(node)  # make sure node isn't filtered
   444     return node
   444     return node
   445 
   445 
   446 def shortesthexnodeidprefix(repo, hexnode, minlength=1):
   446 def shortesthexnodeidprefix(repo, node, minlength=1):
   447     """Find the shortest unambiguous prefix that matches hexnode."""
   447     """Find the shortest unambiguous prefix that matches hexnode."""
   448     # _partialmatch() of filtered changelog could take O(len(repo)) time,
   448     # _partialmatch() of filtered changelog could take O(len(repo)) time,
   449     # which would be unacceptably slow. so we look for hash collision in
   449     # which would be unacceptably slow. so we look for hash collision in
   450     # unfiltered space, which means some hashes may be slightly longer.
   450     # unfiltered space, which means some hashes may be slightly longer.
   451     return repo.unfiltered().changelog.shortest(hexnode, minlength)
   451     return repo.unfiltered().changelog.shortest(hex(node), minlength)
   452 
   452 
   453 def isrevsymbol(repo, symbol):
   453 def isrevsymbol(repo, symbol):
   454     """Checks if a symbol exists in the repo.
   454     """Checks if a symbol exists in the repo.
   455 
   455 
   456     See revsymbol() for details. Raises error.LookupError if the symbol is an
   456     See revsymbol() for details. Raises error.LookupError if the symbol is an