Hi,

Staring from dev300_m1, mingw port has a problem at exit of automatic smoketest.
The dll of basic module, sbgi.dll fails to call the destructor of a 
function-local 
uno object and cause a memory protection error because the bridge is unloaded 
before 
the exit of sbgi.dll.

Before dev300_m1, the bridge gcc3_uno.dll was loaded prior to all the modules 
containing function-local static uno object. However now soffice.bin is 
dynamically 
linked to sbgi.dll (indirectly via sfxgi.dll that is newly used by the loader) 
and it 
is loaded before gcc3_uno.dll. Although the constructor of the static object 
uses the 
bridge, as it is a function-local object, the constructor is not called and 
does not 
load the bridge at the loading of sbgi.dll.

Then the bridge is loaded at some point not later than the initialization of 
the 
function-local object and unloaded at exit before the unloading of sbgi.dll. 
Just 
before the unloading of sbgi.dll, the destructor pointing the bridge code is 
called, 
but the address is no longer valid as the bridge has been already unloaded and 
the 
vtable is destructed.

I think loading the bridge dll earlier will solve the problem but cannot find a 
clean 
way to do so.

Does somebody have any nice suggestions?

Best Regards,

----
 Takashi Ono(HK Freak)
 mailto:[EMAIL PROTECTED] or [EMAIL PROTECTED]
        (Personal Address, checked every morning/evening and holidays)
 mailto:[EMAIL PROTECTED]
        (Address for business, checked every working days)
 http://www.hkfreak.net

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to