[Bug 39718] d3d9.dll trick for Fallout 3 no longer working in Steam

wine-bugs at winehq.org wine-bugs at winehq.org
Tue Dec 8 05:45:40 CST 2015


https://bugs.winehq.org/show_bug.cgi?id=39718

--- Comment #30 from swswine at gmail.com ---
(In reply to mactrix from comment #29)

> 
> Yes it seems. In this case the issue would also occur on native Steam
> versions under Windows. So far I don't have confirmation this is the case.

Your tweak d3d9.dll tricks the game by proxying IDirect3D9 interface and
GetAdapterIdentifier method. In the game's point of view the effect is exactly
the same as what happens when Wine tricks the game in it's method
implementation (that's what we got through registry overload). Your crash log
shows the crash in a different interface not related to Direct3D at all (it is
in IDirectInput device). This means that there is most likely some memory
corruption happens before the crash. Your custom d3d9 most likely has some bug
in interface proxying (inaccurate reference counting/freeing of the interface).
Such sort of bug may be invisible forever or may be triggered by some changes
in the interface usage or implementation, or just happen randomly. Confirming
whether it still works under Windows will really give you nothing. It may work,
or crash, or crash sometimes, or crash on some slightly different
configuration, or even begin to crash on some different computer with the same
configuration. This is not related to Wine. It is practically not possible to
fully simulate Windows environment in such aspects, it would mean copying it
completely.  There are only two ways to go: 
- a good one: use registry tweak (or ask Wine developers if they want to make
this d3d configuration setting available per application through environment
variables);
- a bad one: rewrite tweak dll without the bug and test it.
The last one is really ugly if to talk about port using Wine: you already have
an open source dll to tweak in wine and whatever you want to do in this sense
is easier and more reliable to do there, even if to hardcode card info right
into GetAdapterIdentifier as your tweak dll does.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list