# HG changeset patch # User mpm@selenic.com # Date 1116361229 28800 # Node ID 1b945e8ba67bd5031bdd1c5ef2ef969a6eb22a3b # Parent 58a1a0425c9b81fe29294f1f6eb9caa4cc313e3f Friendlier exceptions for unknown node errors diff -r 58a1a0425c9b -r 1b945e8ba67b mercurial/revlog.py --- a/mercurial/revlog.py Tue May 17 11:40:45 2005 -0800 +++ b/mercurial/revlog.py Tue May 17 12:20:29 2005 -0800 @@ -78,7 +78,7 @@ self.p = parser def load(self, key): n = self.p.data.find(key) - if n < 0: raise KeyError(key) + if n < 0: raise KeyError("node " + hex(key)) pos = n / self.p.s self.p.load(pos) def __contains__(self, key): @@ -91,8 +91,11 @@ try: return self.p.map[key] except KeyError: - self.load(key) - return self.p.map[key] + try: + self.load(key) + return self.p.map[key] + except KeyError: + raise KeyError("node " + hex(key)) def __setitem__(self, key, val): self.p.map[key] = val