--- a/mercurial/revlog.py Sun Dec 17 22:16:57 2006 -0600
+++ b/mercurial/revlog.py Mon Dec 18 12:22:43 2006 -0800
@@ -281,6 +281,7 @@
del self.p.map[key]
class RevlogError(Exception): pass
+class LookupError(RevlogError): pass
class revlog(object):
"""
@@ -471,7 +472,7 @@
try:
return self.nodemap[node]
except KeyError:
- raise RevlogError(_('%s: no node %s') % (self.indexfile, hex(node)))
+ raise LookupError(_('%s: no node %s') % (self.indexfile, hex(node)))
def linkrev(self, node):
return (node == nullid) and nullrev or self.index[self.rev(node)][-4]
def parents(self, node):
@@ -766,7 +767,7 @@
node = id
r = self.rev(node) # quick search the index
return node
- except RevlogError:
+ except LookupError:
pass # may be partial hex id
try:
# str(rev)
@@ -795,7 +796,7 @@
for n in self.nodemap:
if n.startswith(bin_id) and hex(n).startswith(id):
if node is not None:
- raise RevlogError(_("Ambiguous identifier"))
+ raise LookupError(_("Ambiguous identifier"))
node = n
if node is not None:
return node
@@ -815,7 +816,7 @@
if n:
return n
- raise RevlogError(_("No match found"))
+ raise LookupError(_("No match found"))
def cmp(self, node, text):
"""compare text with a given file revision"""
@@ -1155,13 +1156,13 @@
for p in (p1, p2):
if not p in self.nodemap:
- raise RevlogError(_("unknown parent %s") % short(p))
+ raise LookupError(_("unknown parent %s") % short(p))
if not chain:
# retrieve the parent revision of the delta chain
chain = p1
if not chain in self.nodemap:
- raise RevlogError(_("unknown base %s") % short(chain[:4]))
+ raise LookupError(_("unknown base %s") % short(chain[:4]))
# full versions are inserted when the needed deltas become
# comparable to the uncompressed text or when the previous