##// END OF EJS Templates
Various node id lookup tweaks...
mpm@selenic.com -
r469:e205194c default
parent child Browse files
Show More
@@ -98,6 +98,7 b' class lazymap:'
98 98 self.p.load()
99 99 return key in self.p.map
100 100 def __iter__(self):
101 yield nullid
101 102 for i in xrange(self.p.l):
102 103 try:
103 104 yield self.p.index[i][6]
@@ -192,12 +193,14 b' class revlog:'
192 193 def lookup(self, id):
193 194 try:
194 195 rev = int(id)
195 if str(rev) != id: raise "mismatch"
196 if str(rev) != id: raise ValueError
197 if rev < 0: rev = self.count() + rev
198 if rev < 0 or rev >= self.count: raise ValueError
196 199 return self.node(rev)
197 except:
200 except (ValueError, OverflowError):
198 201 c = []
199 202 for n in self.nodemap:
200 if id in hex(n):
203 if hex(n).startswith(id):
201 204 c.append(n)
202 205 if len(c) > 1: raise KeyError("Ambiguous identifier")
203 206 if len(c) < 1: raise KeyError("No match found")
General Comments 0
You need to be logged in to leave comments. Login now