diff --git a/mercurial/wireproto.py b/mercurial/wireproto.py index 3f132207e92f283f6c9ad68c543a43852c13683f_bWVyY3VyaWFsL3dpcmVwcm90by5weQ==..f9fc46698352c5f7bdbd664a726db4a407cc66bd_bWVyY3VyaWFsL3dpcmVwcm90by5weQ== 100644 --- a/mercurial/wireproto.py +++ b/mercurial/wireproto.py @@ -471,7 +471,11 @@ def lookup(repo, proto, key): try: - r = hex(repo.lookup(encoding.tolocal(key))) + k = encoding.tolocal(key) + c = repo[k] + if c.phase() == phases.secret: + raise error.RepoLookupError(_("unknown revision '%s'") % k) + r = c.hex() success = 1 except Exception, inst: r = str(inst)