Mercurial > hg-stable
changeset 43931:7929bb58146f
windows: factor the hgrc directory scan into a function
Differential Revision: https://phab.mercurial-scm.org/D7691
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Tue, 17 Dec 2019 21:25:54 -0500 |
parents | fa3835a15a17 |
children | daed70e95d60 |
files | mercurial/scmwindows.py |
diffstat | 1 files changed, 11 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/scmwindows.py Tue Dec 17 21:21:36 2019 -0500 +++ b/mercurial/scmwindows.py Tue Dec 17 21:25:54 2019 -0500 @@ -28,12 +28,16 @@ # Use mercurial.ini found in directory with hg.exe progrc = os.path.join(os.path.dirname(filename), b'mercurial.ini') rcpath.append(progrc) + + def _processdir(progrcd): + if os.path.isdir(progrcd): + for f, kind in util.listdir(progrcd): + if f.endswith(b'.rc'): + rcpath.append(os.path.join(progrcd, f)) + # Use hgrc.d found in directory with hg.exe - progrcd = os.path.join(os.path.dirname(filename), b'hgrc.d') - if os.path.isdir(progrcd): - for f, kind in util.listdir(progrcd): - if f.endswith(b'.rc'): - rcpath.append(os.path.join(progrcd, f)) + _processdir(os.path.join(os.path.dirname(filename), b'hgrc.d')) + # next look for a system rcpath in the registry value = util.lookupreg( b'SOFTWARE\\Mercurial', None, winreg.HKEY_LOCAL_MACHINE @@ -43,10 +47,8 @@ for p in value.split(pycompat.ospathsep): if p.lower().endswith(b'mercurial.ini'): rcpath.append(p) - elif os.path.isdir(p): - for f, kind in util.listdir(p): - if f.endswith(b'.rc'): - rcpath.append(os.path.join(p, f)) + else: + _processdir(p) return rcpath