http://bugs.winehq.org/show_bug.cgi?id=11757
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |ole
--- Comment #1 from Dan Kegel dank@kegel.com 2008-02-27 19:54:42 --- Running with +seh shows trace:seh:raise_exception code=c0000005 flags=0 addr=0x1b1a1918 trace:seh:raise_exception info[0]=00000000 trace:seh:raise_exception info[1]=1b1a1918 trace:seh:raise_exception eax=00000000 ebx=00000000 ecx=0f0e0d0c edx=00000000 esi=01dcd23c edi=0034d3d0 trace:seh:raise_exception ebp=0034d464 esp=0034d3d0 cs=0073 ds=007b es=007b fs=0033 gs=003b flags=00210202 err:seh:raise_exception Exception frame is not in stack limits => unable to dispatch exception.
Adding +server,+reg (or, sometimes +module), shows that the crash happens immediately after unloading Asn.er.dll, e.g. after the lines trace:module:free_modref unloading L"C:\windows\temp\{34845882-E59E-11DC-C687-001560A350E5}\{8E300EFF-F690-4B24-ACEA-6A09F1D7F5FA}\Asn.er.dll" trace:module:LdrUnloadDll END
Adding +relay "fixes" the problem. Adding +module sometimes fixes it. Adding +variant also fixes it. There are lots of oleaut32 operations during a good run with +trace after the unload of that dll.
I'm tempted to conclude it's an oleaut32 bug. Native dcom98 doesn't seem to be an option, it crashes sooner.