http://bugs.winehq.org/show_bug.cgi?id=34100
Bug #: 34100 Summary: Crash trying to run Artemis demo. Product: Wine Version: 1.6-rc5 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: nigel.hawkins@inmail24.com Classification: Unclassified
Created attachment 45342 --> http://bugs.winehq.org/attachment.cgi?id=45342 Terminal output from crash.
Attempting to run the Artemis Spaceship Bridge Simulator (DEMO version 1.66) from http://www.artemis.eochu.com/?page_id=35
The program brings up a select resolution screen. Clicking on "Start Game" gives a few lines of text then crashes.
This is on Ubuntu 13.04 using wine from: http://ppa.launchpad.net/ubuntu-wine/ppa/ubuntu raring main
Terminal output attached.
http://bugs.winehq.org/show_bug.cgi?id=34100
GyB gyebro69@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download Status|UNCONFIRMED |NEW URL| |http://www.artemis.eochu.co | |m/Artemis_demo_v1_66.exe CC| |gyebro69@gmail.com Ever Confirmed|0 |1
--- Comment #1 from GyB gyebro69@gmail.com 2013-08-11 05:29:16 CDT --- What GCC version are you using on Ubuntu? I suspect it is 4.8.x. I can reproduce the crash here on Fedora 19, using GCC 4.8.1. If I compile Wine with GCC 4.7.3 then the game starts fine.
Confirming the bug.
http://bugs.winehq.org/show_bug.cgi?id=34100
--- Comment #2 from Nigel Hawkins nigel.hawkins@inmail24.com 2013-08-12 03:29:45 CDT --- I'm using a prebuilt wine binary (see original comment), so I don't know which version it is built with.
gcc --version on this Ubuntu 13.04 box gives "4.7.3-1ubuntu1" so that's the default version. Whether the binary is built with that is another question.
http://bugs.winehq.org/show_bug.cgi?id=34100
--- Comment #3 from GyB gyebro69@gmail.com 2013-08-12 10:35:02 CDT --- After upgrading to Fedora 19 I still have many Wine versions compiled on my previous F18 installation (using GCC 4.7.x). The last one compiled on F18 is Wine 1.6-rc1 which is able to start the game correctly. 1.6-rc5 is the first version that I compiled on F19 (using GCC 4.8.1) and the game is broken with that. At first I made a regression test but it gave only bad results. Finally I compiled GCC 4.7.3 on F19 then I compiled Wine with that, and the game starts fine again. Could anyone test this bug on his/her system and specify what GCC version was used?
http://bugs.winehq.org/show_bug.cgi?id=34100
--- Comment #4 from Austin English austinenglish@gmail.com 2013-08-12 14:05:29 CDT --- austin@aw25 ~ $ sha1sum Artemis_demo_v1_66.exe c69fa260c6591ed6b4a218ebda896d821600e777 Artemis_demo_v1_66.exe austin@aw25 ~ $ du -h Artemis_demo_v1_66.exe 31M Artemis_demo_v1_66.exe
works here with gcc-4.7.3 / wine-1.7.0.
fails with gcc-4.8.1 / wine-1.7.0.
http://bugs.winehq.org/show_bug.cgi?id=34100
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |thorprime@gmail.com
--- Comment #5 from Austin English austinenglish@gmail.com 2013-08-15 20:02:08 CDT --- *** Bug 34271 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=34100
Jarkko K jarkko_korpi@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jarkko_korpi@hotmail.com
--- Comment #6 from Jarkko K jarkko_korpi@hotmail.com --- I used the link provided in url field.
gcc -v says
gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1)
wine 1.7.18
I could star the game with no issues, but it complained having old version, not able to really play.
http://bugs.winehq.org/show_bug.cgi?id=34100
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |eeefed3dd02f5299e38d308ee6d | |9ba6998722bdd Status|NEW |RESOLVED CC| |focht@gmx.net Resolution|--- |FIXED Summary|Crash trying to run Artemis |Artemis Spaceship Bridge |demo. |Simulator (demo version | |1.66) crashes on startup
--- Comment #7 from Anastasius Focht focht@gmx.net --- Hello folks,
I can't reproduce this too with Wine 1.7.18, built with gcc 4.8.x
Unfortunately no one here provided a WINEDEBUG=+tid,+seh,+relay,+d3d,+d3d9 trace which would have helped.
Starting with OP's backtrace I deduced it to the original code location.
--- snip --- ... fixme:d3d:swapchain_init The application requested more than one back buffer, this is not properly supported. Please configure the application to use double buffering (1 back buffer) if possible. wine: Unhandled page fault on read access to 0x7bcd9000 at address 0x4b3a7a (thread 0009), starting debugger... Unhandled exception: page fault on read access to 0x7bcd9000 in 32-bit code (0x004b3a7a). Register dump: CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b EIP:004b3a7a ESP:0033f880 EBP:0033f888 EFLAGS:00010212( R- -- I -A- - ) EAX:82427c6d EBX:03a159cc ECX:019d3b1c EDX:00000000 ESI:7bcd8ffd EDI:0305c140 Stack dump: 0x0033f880: 03a159a8 03a15a60 00000000 0041d643 0x0033f890: 02fba830 7bc376ed 067f0580 3812b986 0x0033f8a0: 03a159a8 0033f908 03a15a30 03a15a60 0x0033f8b0: 0033f8d8 004cef6b ffffffff 0041b41a 0x0033f8c0: 3812b9e2 00000000 0033f908 0033fb44 0x0033f8d0: ffffffff 03a159a8 0033fb34 004d109b Backtrace: =>0 0x004b3a7a in artemis (+0xb3a7a) (0x0033f888) 0x004b3a7a: repe movsl (%esi),%es:(%edi) Modules: Module Address Debug info Name (113 modules) PE 400000- 5a7000 Export artemis PE 5b0000- 7e8000 Deferred d3dx9_24 PE 10000000-10039000 Deferred ftd2xx PE 71590000-71617000 Deferred comctl32 ELF 79abe000-7b800000 Deferred libnvidia-glcore.so.313.30 ELF 7b800000-7ba5b000 Deferred kernel32<elf> -PE 7b810000-7ba5b000 \ kernel32 ELF 7bc00000-7bcd9000 Deferred ntdll<elf> -PE 7bc10000-7bcd9000 \ ntdll ... Threads: process tid prio (all id:s are in hex) 00000008 (D) C:\Program Files\Artemis DEMO\Artemis.exe 00000029 15 00000027 0 00000009 0 <== ... --- snip ---
The code causing the fault (0x4b3a7a) looks like some inlined memcpy().
The last caller address is likely 0x0041d643 You can find it by doing a top-down search for valid EIP values in mapped executable .text segment ranges in backtrace 'Stack dump'.
Armed with that info I found and debugged a loop in the game executable which basically does this:
--- snip --- call d3d9.d3d9_texture_2d_GetLevelDesc call d3d9.d3d9_texture_2d_LockRect call operator "new" for some object call operator "new" for some object call memcpy() ; (causes fault) call d3d9.d3d9_texture_2d_UnlockRect --- snip ---
Looking at Henry's comment in bug 34271 (http://bugs.winehq.org/show_bug.cgi?id=34271#c5)
--- quote --- This is supposedly fixed by commit eeefed3dd02f5299e38d308ee6d9ba6998722bdd. --- quote ---
The commit: http://source.winehq.org/git/wine.git/commitdiff/eeefed3dd02f5299e38d308ee6d...
--- snip --- --- a/dlls/d3d9/surface.c +++ b/dlls/d3d9/surface.c @@ -293,8 +293,11 @@ static HRESULT WINAPI d3d9_surface_LockRect(IDirect3DSurface9 *iface, hr = wined3d_surface_map(surface->wined3d_surface, &map_desc, rect, flags); wined3d_mutex_unlock();
- locked_rect->Pitch = map_desc.row_pitch; - locked_rect->pBits = map_desc.data; + if (SUCCEEDED(hr)) + { + locked_rect->Pitch = map_desc.row_pitch; + locked_rect->pBits = map_desc.data; + }
return hr; } --- snip ---
Hmm, that touches the code I've debugged in that loop before the crash.
I reverted the commit on top of current GIT (wine-1.7.18-92-gb01fc1a) and got . . . wine: Unhandled page fault on read access to 0x7dd52000 at address 0x4b3a7a (thread 0035), starting debugger...
Yay! Case closed :)
$ sha1sum Artemis_demo_v1_66.exe c69fa260c6591ed6b4a218ebda896d821600e777 Artemis_demo_v1_66.exe
$ du -sh Artemis_demo_v1_66.exe 31M Artemis_demo_v1_66.exe
$ wine --version wine-1.7.18-92-gb01fc1a
Regards
https://bugs.winehq.org/show_bug.cgi?id=34100
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #8 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 1.7.19.
https://bugs.winehq.org/show_bug.cgi?id=34100
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |directx-d3dx9