[PATCH 1 of 2] demandimport: blacklist pythoncom
Steve Borho
steve at borho.org
Sat Mar 14 22:58:40 CDT 2009
On Sat, Mar 14, 2009 at 10:41 PM, TK Soh <teekaysoh at gmail.com> wrote:
> On Sun, Mar 15, 2009 at 3:18 AM, Steve Borho <steve at borho.org> wrote:
>> On Sat, Mar 14, 2009 at 9:43 PM, TK Soh <teekaysoh at gmail.com> wrote:
>>> On Sat, Mar 14, 2009 at 5:18 PM, Steve Borho <steve at borho.org> wrote:
>>>> On Mon, Mar 9, 2009 at 9:14 PM, Steve Borho <steve at borho.org> wrote:
>>>>> # HG changeset patch
>>>>> # User Steve Borho <steve at borho.org>
>>>>> # Date 1236650437 18000
>>>>> # Node ID 57fa116520f56e5ea21e65489586388787f7b335
>>>>> # Parent 55bd03e2e13c65eeb7175abfc60f9a6ef5e6f0f4
>>>>> demandimport: blacklist pythoncom
>>>>>
>>>>> win32com.shell would segfault at import time if pythoncom
>>>>> was demand loaded.
>>>>>
>>>>> diff --git a/mercurial/demandimport.py b/mercurial/demandimport.py
>>>>> --- a/mercurial/demandimport.py
>>>>> +++ b/mercurial/demandimport.py
>>>>> @@ -117,6 +117,7 @@
>>>>> '_xmlplus',
>>>>> 'fcntl',
>>>>> 'win32com.gen_py',
>>>>> + 'pythoncom',
>>>>> # imported by tarfile, not available under Windows
>>>>> 'pwd',
>>>>> 'grp',
>>>>
>>>>
>>>> Could this patch make it into 1.2.1? TortoiseHg is using
>>>> demandimport internally
>>>> and it calls win32com.shell functions to notify the overlays when
>>>> files have changed.
>>>> There have been a few segfaults reported since we started using demandimport and
>>>> I believe they would be fixed by this patch.
>>>
>>> In case the patch is not accepted in time, is it possible to work
>>> around this in TortoiseHg by manually adding pythoncom into
>>> demandimport.ignore list before enabling it?
>>
>> I can monkey patch it in if I have to.
>
> Sorry I am not familiar with the term "monkey patch". Do you mean
> patching mercurial core?
It means doing this:
from mercurial import demandimport
demandimport.ignore.append('pythoncom')
demandimport.enable()
More information about the Mercurial-devel
mailing list