Show More
@@ -763,15 +763,22 b' class revlog(object):' | |||||
763 | return self.node(rev) |
|
763 | return self.node(rev) | |
764 | except (ValueError, OverflowError): |
|
764 | except (ValueError, OverflowError): | |
765 | pass |
|
765 | pass | |
766 | # hex(node)[:...] |
|
766 | try: | |
767 | node = None |
|
767 | # hex(node)[:...] | |
768 | for n in self.nodemap: |
|
768 | if len(id) % 2 == 0: | |
769 | if hex(n).startswith(id): |
|
769 | bin_id = bin(id) | |
770 |
|
|
770 | else: | |
771 | raise RevlogError(_("Ambiguous identifier")) |
|
771 | bin_id = bin(id[:-1]) | |
772 |
|
|
772 | node = None | |
773 | if node is not None: |
|
773 | for n in self.nodemap: | |
774 | return node |
|
774 | if n.startswith(bin_id) and hex(n).startswith(id): | |
|
775 | if node is not None: | |||
|
776 | raise RevlogError(_("Ambiguous identifier")) | |||
|
777 | node = n | |||
|
778 | if node is not None: | |||
|
779 | return node | |||
|
780 | except TypeError: | |||
|
781 | pass | |||
775 |
|
782 | |||
776 | # might need fixing if we change hash lengths |
|
783 | # might need fixing if we change hash lengths | |
777 | if len(id) == 20 and id in self.nodemap: |
|
784 | if len(id) == 20 and id in self.nodemap: |
General Comments 0
You need to be logged in to leave comments.
Login now