CoCreateInstance not working without TLS libraries

Cihan Altinay cihan at uq.edu.au
Wed Dec 14 18:42:17 CST 2005


Hi,
A very basic C++ program fails with

err:ntdll:RtlpWaitForCriticalSection section 0x7f64c560 "x11drv_main.c:
X11DRV_CritSection" wait timed out in thread 001c, blocked by 001e, retrying (60
sec)

when the Linux TLS libraries are not in the library path (it works fine
otherwise).
The program does:
  CoInitialize()
  CoCreateInstance(<powerpoint viewer 97 clsid>)
  <dispatch the method "NewShow" to load and start a powerpoint presentation>
  CoUninitialize()
  quit

I am happy to send the source/binary if it is of any help.
I am trying to find out what is going on but the problem is that wine does
not crash - the program does its job, powerpoint viewer starts up and shows
the first slide but then after my program has quit the critical section
times out (ie. the message is from the viewer).
I tried different trace outputs with no luck.
Note that since wine's builtin OLE libraries can't handle CoCreateInstance
yet I am using natives.

Does anybody have a suggestion how to track that down?

Thanks a lot,
Cihan




More information about the wine-devel mailing list