mercurial/revlog.py
changeset 16665 e410be860393
parent 16533 95698ee29181
child 16686 67964cda8701
--- a/mercurial/revlog.py	Sat May 12 10:55:08 2012 +0200
+++ b/mercurial/revlog.py	Sat May 12 10:55:08 2012 +0200
@@ -756,6 +756,15 @@
                 pass
 
     def _partialmatch(self, id):
+        try:
+            return self.index.partialmatch(id)
+        except RevlogError:
+            # parsers.c radix tree lookup gave multiple matches
+            raise LookupError(id, self.indexfile, _("ambiguous identifier"))
+        except (AttributeError, ValueError):
+            # we are pure python, or key was too short to search radix tree
+            pass
+
         if id in self._pcache:
             return self._pcache[id]