[Bug 28140] Theatre of War 3: Korea demo 1.2.0 crashes on startup
wine-bugs at winehq.org
wine-bugs at winehq.org
Sat May 24 05:24:46 CDT 2014
http://bugs.winehq.org/show_bug.cgi?id=28140
Anastasius Focht <focht at gmx.net> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |download, obfuscation
Status|UNCONFIRMED |NEW
URL| |http://www.fileplanet.com/2
| |19558/210000/fileinfo/Theat
| |re-of-War-3:-Korea-Demo
CC| |focht at gmx.net
Summary|theatre of war 3 korea Demo |Theatre of War 3: Korea
|does not start |demo 1.2.0 crashes on
| |startup
Ever confirmed|0 |1
--- Comment #4 from Anastasius Focht <focht at gmx.net> ---
Hello folks,
confirming, still present - although it's a different crash now (unhandled C++
exception) which can be attributed to Wine having evolved over time.
Since there exist bug 26827 and bug 36491 which I can't reproduce (most likely
users with broken host deps) using this one for current issue.
The game is Java-based, compiled to native code and obfuscated with Excelsior
JET 5.0 runtime.
--- snip ---
Korea.jar 91 1.5.0_11 DESKTOP
com/ic/ww/game/GameWin3D jet-500-release (pro, en)
1.5.0_11
XKRN50091.dll 4 XMIS50091.DLL=*{comp.dir}\rt\jetrt\XMIS50091.dll
4 XXML50091.DLL=*{comp.dir}\rt\jetrt\XXML50091.dll 4
XAWT50091.DLL=*{comp.dir}\rt\jetrt\XAWT50091.dll 4
XSEC50091.DLL=*{comp.dir}\rt\jetrt\XSEC50091.dll 4
XKRN50091.DLL=*{comp.dir}\rt\jetrt\XKRN50091.dll `
-Djava.class.path:Korea.jar -Djet.jit.fast -Djet.gc.heaplimit:402653184
-Djet.stack.trace
--- snip ---
--- snip ---
at com.maddox.rts.RTS.loadNative(Unknown Source)
at com.maddox.rts.RTS.<clinit>(Unknown Source)
at com.maddox.rts.RTS.loadNative(Unknown Source)
at com.maddox.rts.SFSInputStream.<clinit>(Unknown Source)
at com.maddox.rts.SFSReader.<init>(Unknown Source)
at com.maddox.rts.IniFile.loadFile(Unknown Source)
at com.maddox.rts.IniFile.<init>(Unknown Source)
at com.maddox.rts.IniFile.<init>(Unknown Source)
at com.ic.ww.game.GameWin3D.createConfigs(Unknown Source)
at com.ic.ww.game.Main.exec(Unknown Source)
at com.ic.ww.game.GameWin3D.main(Unknown Source)
--- snip ---
You can tweak various settings "offline" by editing 'ww.ini' in game folder:
--- snip ---
...
[core]
refresh=60
renderer=Direct3D9
window=(changeScreenRes=true,colourBits=32,depthBits=24,drawIfNotFocused=false,enableClose=false,enableResize=false,fullScreen=false,height=768,stencilBits=8,width=1024,posx=0,posy=0)
console=(bLog=true,bLogTime=false,bPause=true,bUseStartLog=false,bWrap=true,history=128,historyCmd=128,logFile=log.lst,page=20)
...
--- snip ---
'fullScreen=false' -> windowed mode
The crash seems to be dependent on number/type of active debug channels
(timing/threading/race?).
The launcher (parent, tid 0062) and game main process (child, console process,
tid 0060) communicate with IPC-like mechanism using process pipes.
The child instructs the parent to carry out various things.
Trace with +relay:
--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/Battlefront/1C Company/Theatre of War 3
Korea - Trial Version
$ WINEDEBUG=+tid,+seh,+relay wine ./Korea.exe >>log.txt 2>&1
...
002a:Call KERNEL32.CreateProcessW(00000000,0033a97c L"C:\\Program
Files\\Battlefront\\1C Company\\Theatre of War 3 Korea - Trial
Version\\Korea.bin",00000000,00000000,00000001,00000000,00000000,00000000,0033bc30,0033bc14)
ret=00a9255d
...
0060:Starting process L"C:\\Program Files\\Battlefront\\1C Company\\Theatre of
War 3 Korea - Trial Version\\Korea.bin" (entryproc=0x401000)
...
0060:Call KERNEL32.LoadLibraryA(0151fce8 "C:\\Program Files\\Battlefront\\1C
Company\\Theatre of War 3 Korea - Trial Version\\rt\\jetrt\\XKRN50091.dll")
ret=00af9c39
...
002a:Call
KERNEL32.CreateThread(00000000,00000000,00402070,00000000,00000000,00000000)
ret=0040280e
...
002a:Ret KERNEL32.CreateThread() retval=000002e0 ret=0040280e
...
0062:Call TLS callback
(proc=0xa9cf98,module=0x400000,reason=THREAD_ATTACH,reserved=0)
...
0060:Call KERNEL32.GetProcAddress(041b0000,0151f5b8
"_Java_com_maddox_core_SMesh_LoadAnimation at 16") ret=067aa223
0060:Ret KERNEL32.GetProcAddress() retval=042e5ba0 ret=067aa223
...
0062:Call KERNEL32.CreateFileA(0cb6e810
"Animations\\ANI\\creep_idle.ani",80000000,00000001,00000000,00000003,10000000,00000000)
ret=00408131
0062:Ret KERNEL32.CreateFileA() retval=ffffffff ret=00408131
...
0062:Call user32.FindWindowA(004121d0 "1CMaddoxDirect3DWndClass",004121ec
"Korea") ret=004020c0
...
0062:Ret user32.FindWindowA() retval=000200be ret=004020c0
...
0062:Ret KERNEL32.WaitForSingleObject() retval=00000000 ret=0040191b
0060:Ret KERNEL32.WaitForSingleObject() retval=00000000 ret=03fd60eb
0062:Call KERNEL32.WriteFile(000002d4,0041ce80,00007fff,0cb6e980,00000000)
ret=0040193e
0060:Call KERNEL32.ReadFile(00000010,04004b08,00007fff,04011b30,00000000)
ret=03fd610a
0060:Ret KERNEL32.ReadFile() retval=00000001 ret=03fd610a
0060:Call KERNEL32.RaiseException(e06d7363,00000001,00000003,0151e4e4)
ret=7c359aed
0060:trace:seh:raise_exception code=e06d7363 flags=1 addr=0x7b83ac57
ip=7b83ac57 tid=0060
0060:trace:seh:raise_exception info[0]=19930520
0060:trace:seh:raise_exception info[1]=0151e520
0060:trace:seh:raise_exception info[2]=03feb5b8
0060:trace:seh:raise_exception eax=7b826c7d ebx=7b8bb000 ecx=03feb5b8
edx=0151e430 esi=0151e4c8 edi=0151e490
0060:trace:seh:raise_exception ebp=0151e468 esp=0151e404 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00000287
...
0062:Ret KERNEL32.WriteFile() retval=00000001 ret=0040193e
0060:Call ntdll.RtlUnwind(0151f714,7c359b4e,0151e410,00000000) ret=7c359b4e
0062:Call KERNEL32.WaitForSingleObject(000002d4,00000000) ret=0040195a
...
0060:Call KERNEL32.RaiseException(e06d7363,00000001,00000003,0151f94c)
ret=7c359aed
0060:trace:seh:raise_exception code=e06d7363 flags=1 addr=0x7b83ac57
ip=7b83ac57 tid=0060
0060:trace:seh:raise_exception info[0]=19930520
0060:trace:seh:raise_exception info[1]=0151f968
0060:trace:seh:raise_exception info[2]=043b81ac
0060:trace:seh:raise_exception eax=7b826c7d ebx=7b8bb000 ecx=19930520
edx=0151f884 esi=0151f930 edi=0151f8f0
0060:trace:seh:raise_exception ebp=0151f8c8 esp=0151f864 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00000283
...
java.lang.RuntimeException: INTERNAL ERROR: Can't load animation
'Animations/ANI/creep_idle.ani'
--- snip ---
These paths are internal, probably kind of virtual file system within BLOBs.
The errors are more or less random, depending on timing/load:
--- snip ---
java.lang.RuntimeException: INTERNAL ERROR: Can't load animation
'Animations/ANI/6pdr_c2_infantry.ani'
--- snip ---
The JET runtime system links against MS VC++ 2003 runtime, native
msvcr71/msvcp71 doesn't improve the situation.
$ sha1sum Theatre-of-War3_Korea_Trial_Version.exe
954a1704fd61a8971548af5c8ac218583ffe9d6c
Theatre-of-War3_Korea_Trial_Version.exe
$ du -sh Theatre-of-War3_Korea_Trial_Version.exe
1.7G Theatre-of-War3_Korea_Trial_Version.exe
$ wine --version
wine-1.7.19-56-gee13e10
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