Mercurial > hg-stable
changeset 34887:7bf7544fd6cc
chgserver: do not treat HG as sensitive environ when CHGHG is set
When `$CHGHG` is set, `$HG` is ignored by the chg client. Removing it from
chg's sensitive environment list would avoid starting up servers
unnecessarily when `$CHGHG` is the same while `$HG` is different.
Differential Revision: https://phab.mercurial-scm.org/D1177
author | Jun Wu <quark@fb.com> |
---|---|
date | Wed, 18 Oct 2017 14:55:39 -0700 |
parents | dbb542326582 |
children | 317566f0c2e6 |
files | mercurial/chgserver.py |
diffstat | 1 files changed, 6 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/chgserver.py Wed Oct 18 22:54:50 2017 +0200 +++ b/mercurial/chgserver.py Wed Oct 18 14:55:39 2017 -0700 @@ -108,8 +108,13 @@ for section, item in _configsectionitems: sectionitems.append(ui.config(section, item)) sectionhash = _hashlist(sectionitems) + # If $CHGHG is set, the change to $HG should not trigger a new chg server + if 'CHGHG' in encoding.environ: + ignored = {'HG'} + else: + ignored = set() envitems = [(k, v) for k, v in encoding.environ.iteritems() - if _envre.match(k)] + if _envre.match(k) and k not in ignored] envhash = _hashlist(sorted(envitems)) return sectionhash[:6] + envhash[:6]