Mercurial > evolve
diff hgext/evolve.py @ 875:10867a8e27c6
exchange: properly wrap wireprotocol capabilities
Just wrapping the module function only works for ssh. Ssh gets capability
through the `hello` command. We also need to wrap the function stored in the
command dict. This fix discovery for http peer.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Mon, 10 Mar 2014 21:34:36 -0700 |
parents | 66bbbb96f5e0 |
children | cf35f38d6a10 |
line wrap: on
line diff
--- a/hgext/evolve.py Mon Mar 10 17:40:38 2014 -0700 +++ b/hgext/evolve.py Mon Mar 10 21:34:36 2014 -0700 @@ -2455,4 +2455,9 @@ hgweb_mod.perms['evoext_obshash'] = 'pull' wireproto.commands['evoext_pushobsmarkers_0'] = (srv_pushobsmarkers, '') wireproto.commands['evoext_pullobsmarkers_0'] = (srv_pullobsmarkers, '*') + # wrap command content + oldcap, args = wireproto.commands['capabilities'] + def newcap(repo, proto): + return capabilities(oldcap, repo, proto) + wireproto.commands['capabilities'] = (newcap, args) wireproto.commands['evoext_obshash'] = (srv_obshash, 'nodes')