[Bug 36449] Death to Spies: Moment of Truth crashes on mission start (incorrect ID3DXSkinInfo::ConvertToIndexedBlendedMesh stub signature)
wine-bugs at winehq.org
wine-bugs at winehq.org
Mon May 25 09:37:11 CDT 2015
https://bugs.winehq.org/show_bug.cgi?id=36449
Anastasius Focht <focht at gmx.net> changed:
What |Removed |Added
----------------------------------------------------------------------------
Fixed by SHA1| |27c72ae986fbc6f168e2001b43c
| |f80a131de03cd
Status|NEW |RESOLVED
Resolution|--- |FIXED
Summary|Death to Spies: Moment of |Death to Spies: Moment of
|Truth crashes on mission |Truth crashes on mission
|start (needs |start (incorrect
|ID3DXSkinInfo::ConvertToInd |ID3DXSkinInfo::ConvertToInd
|exedBlendedMesh |exedBlendedMesh stub
|implementation) |signature)
--- Comment #4 from Anastasius Focht <focht at gmx.net> ---
Hello folks,
indeed it moves further (but quickly crashes again).
https://source.winehq.org/git/wine.git/commitdiff/27c72ae986fbc6f168e2001b43cf80a131de03cd
Thanks Christian
Fixed stub:
--- snip ---
...
0045:fixme:d3dx:d3dx9_skin_info_ConvertToIndexedBlendedMesh iface 0x59bc78d8,
mesh_in 0x59bff860, options 0, palette_size 69, adjacency_in 0x5acafe0,
adjacency_out 0x5ad6570, face_remap (nil), vertex_remap (nil), max_face_infl
0x32f1c0, num_bone_combinations 0x32f194, bone_combination_table 0x32f1a0,
mesh_out 0x32f164 stub!
0045:Call ntdll.RtlFreeHeap(01060000,00000000,05acafd0) ret=007bf3c1
0045:Ret ntdll.RtlFreeHeap() retval=00000001 ret=007bf3c1
0045:Call ntdll.RtlFreeHeap(01060000,00000000,05ad6560) ret=007bf3c1
0045:Ret ntdll.RtlFreeHeap() retval=00000001 ret=007bf3c1
0045:trace:d3dx:d3dx9_skin_info_Release 0x59bc78d8 decreasing refcount to 0.
0045:Call ntdll.RtlFreeHeap(00110000,00000000,00000000) ret=7e1a5fdf
0045:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7e1a5fdf
...
--- snip ---
The crash from comment #3 is a different bug.
--- snip ---
...
0045:Call
d3dx9_36.D3DXCompileShader(00db66c0,000007da,00000000,0083e5e8,007f61f8
"PS",0032f988 "ps_2_b",00000000,0032f96c,0032f97c,00000000) ret=00430670
0045:trace:d3dx:D3DXCompileShader data
"//--------------------------------------------------------------------------\r\n//
Depth of field
effect\r\n//--------------------------------------------------------------------------\r\n\r\n//
<version:ps_2_b>\r\n\r\nsampler tSource : register(s0);\r\nsampler
tSourceLow : register(s1);\r\n\r\n#d"..., length 2010, defines (nil), include
0x83e5e8, function "PS", profile "ps_2_b", flags 0, shader 0x32f96c, error_msgs
0x32f97c, constant_table (nil).
...
0045:Call msvcrt.getenv(0090e168 "D3DCOMPILER_FORCE_PREFER_FLOW") ret=009a8356
0045:Ret msvcrt.getenv() retval=00000000 ret=009a8356
...
0045:Call msvcrt._vsnprintf(0032ae44,00000f9b,00915468 "global variables are
implicitly constant, enable compatibility mode to allow modification",0032be08)
ret=00a95726
0045:Ret msvcrt._vsnprintf() retval=00000059 ret=00a95726
...
0045:Call user32.MessageBoxA(00000000,0106b158 "Failed to compile
(shaders\\ps\\DOF_2b.psh) -> line C:\\Program Files\\Aspyr\\Death to Spies -
Moment of Truth Demo\\Shader at 0x00DB66C0(21,16): error X3025: global variables
are implicitly constant, enable compatibility mode to allow
modification\n",00844e30 "Error:",00001030) ret=00405f86
...
0045:Call ntdll.RtlFreeHeap(01060000,00000000,031e8450) ret=007bf3c1
0045:Ret ntdll.RtlFreeHeap() retval=00000001 ret=007bf3c1
0045:trace:seh:raise_exception code=c0000005 flags=0 addr=0x4d1ee3 ip=004d1ee3
tid=0045
0045:trace:seh:raise_exception info[0]=00000000
0045:trace:seh:raise_exception info[1]=deadbeef
0045:trace:seh:raise_exception eax=deadbeef ebx=00000010 ecx=03146720
edx=0324f1c8 esi=031e8418 edi=00000000
0045:trace:seh:raise_exception ebp=0032f930 esp=0032f8d4 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00010202
0045:trace:seh:call_stack_handlers calling handler at 0x7c9140 code=c0000005
flags=0
0045:trace:seh:call_stack_handlers handler at 0x7c9140 returned 1
0045:trace:seh:call_stack_handlers calling handler at 0x7c9140 code=c0000005
flags=0
...
Unhandled exception: page fault on read access to 0xdeadbeef in 32-bit code
(0x004d1ee3).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:004d1ee3 ESP:0032f8d4 EBP:0032f930 EFLAGS:00010202( R- -- I - - - )
EAX:deadbeef EBX:00000010 ECX:03146720 EDX:0324f1c8
ESI:031e8418 EDI:00000000
...
Backtrace:
=>0 0x004d1ee3 in truth (+0xd1ee3) (0x0032f930)
1 0x007bfe92 in truth (+0x3bfe91) (0x00db66c0)
2 0x00d30128 (0x00d30088)
3 0x00db66c0 (0x00d30098)
4 0x00d30088 (0x00d300a8)
5 0x00d30098 (0x00d300b8)
6 0x00d300a8 (0x00d300c8)
...
0x004d1ee3: movl 0x0(%eax),%edx
Modules:
Module Address Debug info Name (187 modules)
PE 400000- 8c9000 Export truth
PE 8d0000- ad7000 Deferred d3dcompiler_43
PE bf0000- d29000 Deferred vorbis
PE 10000000-10022000 Deferred vfs20
...
Threads:
process tid prio (all id:s are in hex)
...
00000044 (D) C:\Program Files\Aspyr\Death to Spies - Moment of Truth
Demo\Truth.exe
0000003e 0
0000002d 0
0000002c 15
00000047 0
00000046 0
00000045 0 <==
--- snip ---
Another tidbit, albeit unrelated to the issue here:
The game needs DXTn software de/encoding support.
I run one of my machines with Fedora 22 x64 and Mesa 10.5.x/Nouveau (no NVIDIA
blob):
--- snip ---
...
0027:trace:d3dx:D3DXCreateTextureFromFileInMemoryEx Texture created correctly.
Now loading the texture data into it.
...
0027:trace:d3dx:D3DXLoadSurfaceFromMemory (0x1f281c8, (nil), (null), 0xdb6778,
0x35545844, 2048, (nil), (0,0)-(512,512), 0x3, 0x00000000)
...
0027:fixme:d3dx:D3DXLoadSurfaceFromMemory Format conversion missing 0x35545844
-> 0x1c
0027:fixme:d3dx:D3DXCreateTextureFromFileInMemoryEx Texture loading failed.
...
0027:Ret d3dx9_36.D3DXCreateTextureFromFileInMemoryEx() retval=80004001
ret=004486b7
0027:Call KERNEL32.GetLastError() ret=007c9747
0027:Ret KERNEL32.GetLastError() retval=000036b7 ret=007c9747
0027:trace:seh:raise_exception code=c0000005 flags=0 addr=0x4486d5 ip=004486d5
tid=0027
0027:trace:seh:raise_exception info[0]=00000000
0027:trace:seh:raise_exception info[1]=00000000
0027:trace:seh:raise_exception eax=00000000 ebx=00000001 ecx=00844e18
edx=00408470 esi=00db66f8 edi=0187b720
0027:trace:seh:raise_exception ebp=ffffffff esp=0032f978 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00010216
0027:trace:seh:call_stack_handlers calling handler at 0x7c9140 code=c0000005
flags=0
--- snip ---
Using the Wine-Staging wined3d-DXTn patchset fixes the problem:
https://github.com/wine-compholio/wine-staging/tree/master/patches/wined3d-DXTn
$ wine --version
wine-1.7.43-145-g66480ac
Regards
--
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