http://bugs.winehq.org/show_bug.cgi?id=17836
--- Comment #4 from Jörg Höhle hoehle@users.sourceforge.net 2009-03-26 09:38:52 --- Created an attachment (id=20129) --> (http://bugs.winehq.org/attachment.cgi?id=20129) excerpt of traces with several WINEDEBUG settings
The common aspect between mcm2 and Alien Nations seems that havoc breaks out soon after amstream:IDirectDrawMediaStreamImpl_GetFormat(). Both applications do not manage to play their intro video (others do).
The error messages (see attachment) suggest that wine becomes confused by garbaged memory data. Perhaps a race condition is involved as well, as there's an extreme sensitivity on WINEDEBUG settings:
A default trace without $WINEDEBUG yields (among others): err:d3d:resource_init Out of memory! but Alien Nations nevertheless runs successfully - without video.
WINEDEBUG=+all,-dbghelp_dwarf,... 2>/dev/shm/v.log yields no such err: line at all.
WINEDEBUG=+amstream,-dbghelp_dwarf,-heap,warn+heap,-gdi,-dsound,+quartz,+tid,+seh,+ole yields a crash after a few errors which look like illegal arguments were supplied to ddraw functions: err:ddraw:IDirectDrawImpl_CreateSurface Unknown Z buffer bit depth err:ddraw:IDirectDrawSurfaceImpl_QueryInterface No interface err:ddraw:PixelFormat_DD2WineD3D Unknown Pixelformat!
(The Alien Nations is easier to trace+all than MCM2 because the latter does a million irrelevant +relay and +nls calls)