Michael Marxmeier wrote:
Seems the critical sections in ole32 do not become initialized so the lock count is zero ...
Found it ...
Seems COMPOBJ_InitProcess() in dlls/ole32/compobj.c never gets called so the csRegisteredClassList critical section is uninitialized. After making sure the critical section gets intialized it works as expected.
As far as i can see this should get called from OLE32_DllEntryPoint() in dlls/ole32/ole32_main.c when the DLL is loaded. No idea why it does not and where to look next ...
Any clues to share?
Thanks Michael