http://bugs.winehq.org/show_bug.cgi?id=9551
Summary: Game crashes if enter tactical modus in UFO:ET -- d3d Product: Wine Version: 0.9.44. Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: enhancement Priority: P2 Component: wine-directx-d3d AssignedTo: wine-bugs@winehq.org ReportedBy: sm@kleinreich.de
Created an attachment (id=7923) --> (http://bugs.winehq.org/attachment.cgi?id=7923) Last 500 lines before crash UFO:ET -- d3dx9
If trying to start a tactical mission in UFO Extraterrestrials, game crashes, estimate d3dx9 as reason.
Note: Game uses native distrib. DLL d3dx9_26.dll
Last 500 lines of debugchannel +d3d before crash attached.
http://bugs.winehq.org/show_bug.cgi?id=9551
--- Comment #1 from Marcel Schmedes sm@kleinreich.de 2007-09-02 05:34:48 --- (From update of attachment 7923) Auto-detect of attachment type failed, any possibility to change to plain-text?!
http://bugs.winehq.org/show_bug.cgi?id=9551
Marcel Schmedes sm@kleinreich.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #7923 is|0 |1 obsolete| |
--- Comment #2 from Marcel Schmedes sm@kleinreich.de 2007-09-02 08:15:43 --- Created an attachment (id=7926) --> (http://bugs.winehq.org/attachment.cgi?id=7926) Debug +d3d last 500 lines to crash
Just replacment for 7923 - correct content type
http://bugs.winehq.org/show_bug.cgi?id=9551
Vitaliy Margolen vitaliy@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #7923|application/octet-stream |text/plain mime type| |
--- Comment #3 from Vitaliy Margolen vitaliy@kievinfo.com 2007-09-02 10:05:48 --- (From update of attachment 7923) You can always change the mime type - no need to report the same stuff again.
http://bugs.winehq.org/show_bug.cgi?id=9551
--- Comment #4 from Marcel Schmedes sm@kleinreich.de 2007-09-02 10:29:55 --- Ok, after fiddle around with UFO, I used a Savegame from Windoze, beeing in tactical maneuver and It's working well. ( After removing videos for soldierface-animations, ./data/video/* - all videos used in Ufo (.ogg) don't like wine... ). See AppDB for screens. _But_ the bug is still there, if you click on Geoscape and drag - the Game still crash, seem's that this Issue has just nothing to do with tactical modus. Maybe an impact from Bug 9550 - Mouse-desync!?
http://bugs.winehq.org/show_bug.cgi?id=9551
Marcel Schmedes sm@kleinreich.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |stefandoesinger@gmx.at Status|UNCONFIRMED |RESOLVED Resolution| |FIXED
--- Comment #5 from Marcel Schmedes sm@kleinreich.de 2007-09-02 19:55:09 --- Ok after finding causing function ( and try to understand ;), IWineD3DDeviceImpl_SetStreamSource I looked on git sources, just to see this Issue is fixed by:
commit 36aef3dc546adfe0e8a45895e5e8cbd234f7736b Author: Stefan Dösinger stefan@codeweavers.com Date: Mon Aug 20 18:56:10 2007 +0200
wined3d: Hold an internal reference on pixel and vertex shaders.
Thanks to Stefan this bug doesn't appear anymore with: wine-0.9.44-195-g282696b
@Stefan: Would be nice if you drop me a note, where exactly the problem was.
http://bugs.winehq.org/show_bug.cgi?id=9551
--- Comment #6 from Stefan Dösinger stefandoesinger@gmx.at 2007-09-03 04:14:24 --- The problem is that Microsoft violates its own COM rules in Direct3D. The application creates a vertex buffer, sets it(SetStreamSource), then releases it. The SetStreamSource does not increase the reference count visible to the app, so the release() is supposed to destroy the buffer. Then the stateblock contains a pointer to a destroyed buffer and the device crashes when trying to render from it.
However, as a test prooves, the buffer is not destroyed, although its reference count is 0. A buffer that is set in a stateblock is prevented from beeing destroyed as long as it's set in the stateblock and the stateblock is valid. We increate/decrease the WineD3D reference count to achieve that. The app does not see the wined3d refcount because it only talks to d3d9.dll, which in turn uses wined3d, so we have exactly the behavior windows has.
http://bugs.winehq.org/show_bug.cgi?id=9551
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #7 from Dan Kegel dank@kegel.com 2008-01-28 05:24:39 --- Closing all RESOLVED FIXED bugs more than three months old.