http://bugs.winehq.org/show_bug.cgi?id=14161
--- Comment #2 from Alexander Dorofeyev alexd4@inbox.lv 2008-06-28 10:54:54 --- Oh, sorry, the above posts contain wrong commit hashes. Correct hashes for two other commits causing issues are
d54c53a4b64223cb5744571b9f56064543e385c0 quartz: Fix Render and RenderFile. b157969d49bd81d23b542b19d55a8c1f8bd004d8 quartz: Only enumerate renderers if bRender is set in filtermapper.
Regarding d54c53a4b64223cb5744571b9f56064543e385c0 - I'm checking what happens and I think that commit is wrong because now for some reason it's trying to connect the game's custom renderer during RenderFile("intro.avi") call. But the game's custom renderer ("LG Video Renderer") appears to have MERIT_UNLIKELY, while standart "Video Renderer" has higher merit MERIT_PREFERRED (as far as i can tell).
Before, RenderFile was connecting "Video Renderer" there, which seems more correct to me as "Video Renderer" should be preferred(?). So before it was RenderFile(), then EnumMatchingFilters(), then game finds "LG Video Renderer", disconnects standart video renderer from the graph and connects its own. With d54c53a4b64223cb5744571b9f56064543e385c0 it crashes during RenderFile in some pin's method in its custom renderer DLL. Can't tell for sure from the assembly, but I guess when doing RenderFile the game hasn't yet properly initialized the custom renderer or something along those lines and it isn't ready for connection.