diff -r a184cd0c2db9 -r 1539f788e913 mercurial/context.py --- a/mercurial/context.py Tue Oct 03 12:14:33 2006 -0700 +++ b/mercurial/context.py Tue Oct 03 12:28:27 2006 -0700 @@ -73,8 +73,14 @@ def filenode(self, path): if hasattr(self, "_manifest"): - return self._manifest[path] + try: + return self._manifest[path] + except KeyError: + raise repo.LookupError(_("'%s' not found in manifest") % path) node, flag = self._repo.manifest.find(self._changeset[0], path) + if not node: + raise repo.LookupError(_("'%s' not found in manifest") % path) + return node def filectx(self, path, fileid=None):