mercurial/revlog.py
changeset 29396 d0ae5b8f80dc
parent 29339 a9e010cd66e1
child 29732 0806fa2a39d8
equal deleted inserted replaced
29395:4c8026babe8c 29396:d0ae5b8f80dc
   939             if n and self.hasnode(n):
   939             if n and self.hasnode(n):
   940                 return n
   940                 return n
   941             return None
   941             return None
   942         except RevlogError:
   942         except RevlogError:
   943             # parsers.c radix tree lookup gave multiple matches
   943             # parsers.c radix tree lookup gave multiple matches
       
   944             # fast path: for unfiltered changelog, radix tree is accurate
       
   945             if not getattr(self, 'filteredrevs', None):
       
   946                 raise LookupError(id, self.indexfile,
       
   947                                   _('ambiguous identifier'))
   944             # fall through to slow path that filters hidden revisions
   948             # fall through to slow path that filters hidden revisions
   945             pass
       
   946         except (AttributeError, ValueError):
   949         except (AttributeError, ValueError):
   947             # we are pure python, or key was too short to search radix tree
   950             # we are pure python, or key was too short to search radix tree
   948             pass
   951             pass
   949 
   952 
   950         if id in self._pcache:
   953         if id in self._pcache: