[PATCH 1 of 4] config: don't read the same config file twice

Pierre-Yves David pierre-yves.david at ens-lyon.org
Thu Sep 25 20:25:46 CDT 2014



On 09/25/2014 08:58 AM, Mads Kiilerich wrote:
> On 09/25/2014 04:48 AM, Pierre-Yves David wrote:
>>
>>
>> On 09/24/2014 06:33 PM, Mads Kiilerich wrote:
>>> # HG changeset patch
>>> # User Mads Kiilerich <madski at unity3d.com>
>>> # Date 1409859395 -7200
>>> #      Thu Sep 04 21:36:35 2014 +0200
>>> # Node ID e04d746df4b9a7c5ef32b0bf70284e3dd8402791
>>> # Parent  fa3181323c0aa9b2d2c2f81a7d68d57bd3a7a515
>>> config: don't read the same config file twice
>>>
>>> In some cases some config files would be read twice and shown twice in
>>> showconfig --debug.
>>
>> Can you details how the two changes fixes this bug? I'm curious.
>>
>>>
>>> diff --git a/mercurial/scmposix.py b/mercurial/scmposix.py
>>> --- a/mercurial/scmposix.py
>>> +++ b/mercurial/scmposix.py
>>> @@ -21,7 +21,8 @@ def systemrcpath():
>>>       # old mod_python does not set sys.argv
>>>       if len(getattr(sys, 'argv', [])) > 0:
>>>           p = os.path.dirname(os.path.dirname(sys.argv[0]))
>>> -        path.extend(_rcfiles(os.path.join(p, root)))
>>> +        if p != '/':
>>> +            path.extend(_rcfiles(os.path.join(p, root)))
>>>       path.extend(_rcfiles('/' + root))
>
> The same paths were added twice if p == '/'.

Well, I already assumed that your changed this in relation with the 
patch description. But this does not explain how this double adding was 
happening.

-- 
Pierre-Yves David


More information about the Mercurial-devel mailing list