Boost logo

Boost :

Subject: Re: [boost] [Locale] Static locale initialisation
From: Alexander Lamaison (awl03_at_[hidden])
Date: 2010-04-08 15:44:14


On Tue, 6 Apr 2010 23:26:09 -0700 (PDT), Artyom wrote:

>>> Can you provide a simple sample of the code that
>> reproduces the issue
>>> so I can debug it?
>>
>> I'll try and whip something up tonight.
>
> Any updates?

I've had real trouble isolating a minimal set of code to reproduce this.
It appears to be related to the static local instance:

__PURE_APPDOMAIN_GLOBAL static std::locale::_Locimp *global_locale = 0; //
pointer to current locale

being deleted once for *each loaded DLL*. When I Release() a COM component
in a separate DLL, the DLL is unloaded and calls tidy_global() deleting
global_locale. Later the EXE terminates which again tries to delete
global_locale causing an access violation.

Unfortunately, I'm nowhere near a small set of code for repro yet :(

Alex

P.S. As you advised, I compiled my own version of ICU. Because they only
ship an MSVC9 project with version 4.2 (why do projects to that?!) I've
downgraded to 4.0.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk