Public bug reported: If you try to run the game Scarlet Weather Rhapsody under Wine on Ubuntu natty, it segfaults on startup. This seems to be a bug that's fixed in mesa's git repo. This used to work on lucid, but regressed in maverick and is still present in natty alpha-3.
Sorry the how-to-reproduce instructions are a bit convoluted. You can take the demo version of the game from http://tasofro.net/touhou105/download.html (you want the 83.8MB download link), and run under natty's wine: LANG=ja_JP.UTF-8 winedbg ./th105.exe Unhandled exception: page fault on read access to 0x00000018 in 32-bit code (0x677827c7). Register dump: CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b EIP:677827c7 ESP:0563e224 EBP:0563e2dc EFLAGS:00210246( R- -- I Z- -P- ) EAX:00000000 EBX:677c1ff4 ECX:00000008 EDX:677c2580 ESI:00000008 EDI:00000000 Stack dump: 0x0563e224: 7c494908 7c7ab520 00000000 00000000 0x0563e234: 00000000 00000000 00000000 00000000 0x0563e244: 00000000 00000000 00000000 00000000 0x0563e254: 00000000 00000000 00000000 00000000 0x0563e264: 00000000 00000000 7c494908 00000003 0x0563e274: 00000005 00000001 00000002 00000000 Backtrace: =>0 0x677827c7 in i915_dri.so (+0x267c7) (0x0563e2dc) 1 0x67784d07 in i915_dri.so (+0x28d06) (0x0563e2ec) 2 0x4ed391a3 _mesa_GetProgramivARB+0x322() in libdricore.so (0x0563e31c) 3 0x7192073e in wined3d (+0x2073d) (0x0563e4ac) [etc] Here's a version of the backtrace with debug symbols (you'll notice that it's for maverick's mesa 7.9 and a custom wine, but it's the same crash, honest): =>0 0x2002d52a translate_program+0xba(p=<is not available>) [/home/pm215/src/mesa-7.9~git20100924/build/dri/src/mesa/drivers/dri/i915/i915_fragprog.c:356] in i915_dri.so (0x0605e314) 1 0x2002f9b7 i915IsProgramNative+0x46(ctx=0x7d03b198, target=0x8804, prog=0x7d128380) [/home/pm215/src/mesa-7.9~git20100924/build/dri/src/mesa/drivers/dri/i915/i915_fragprog.c:1261] in i915_dri.so (0x0605e344) 2 0x20063433 _mesa_GetProgramivARB+0x352(target=0x202f82e0, pname=0x88b6, params=0x605e4a4) [/home/pm215/src/mesa-7.9~git20100924/build/dri/src/mesa/main/arbprogram.c:844] in i915_dri.so (0x0605e4d4) 3 0x46d7bd2f fragment_prog_arbfp+0x175e(state_id=0x0176, stateblock=0x1410e0, context=0x4eaec38) [/home/pm215/src/wine-for-touhou.git/dlls/wined3d/arb_program_shader.c:6196] in wined3d (0x0605e534) 4 0x46d9a737 context_apply_draw_state+0xb6(context=0x4eaec38, device=0x13e050) [/home/pm215/src/wine-for-touhou.git/dlls/wined3d/context.c:2201] in wined3d (0x0605e7c4) 5 0x46dd6735 drawPrimitive+0x1b4(device=0x13e050, index_count=0x0004, StartIdx=0, idxSize=0, idxData=0x0(nil)) [/home/pm215/src/wine-for-touhou.git/dlls/wined3d/drawprim.c:629] in wined3d (0x0605e814) 6 0x46dab286 IWineD3DDeviceImpl_DrawPrimitiveUP+0xc5(iface=0x13e050, vertex_count=0x0004, pVertexStreamZeroData=0x605e898, VertexStreamZeroStride=0x0014) [/home/pm215/src/wine-for-touhou.git/dlls/wined3d/device.c:4898] in wined3d (0x0605e874) 7 0x4738cd3d IDirect3DDevice9Impl_DrawPrimitiveUP+0xbc(iface=0x13b9a8, PrimitiveType=D3DPT_TRIANGLESTRIP, PrimitiveCount=0x0002, pVertexStreamZeroData=0x605e898, VertexStreamZeroStride=0x0014) [/home/pm215/src/wine-for-touhou.git/dlls/d3d9/device.c:1951] in d3d9 (0x0605ea44) 8 0x00401423 in th123 (+0x1422) (0x0605ea58) 9 0x7bc72bf0 call_thread_entry_point+0x6f(entry=0x408330, arg=0x0(nil)) [/home/pm215/src/wine-for-touhou.git/dlls/ntdll/signal_i386.c:2473] in ntdll ...we crash in upload_program() because p->ctx->FragmentProgram._Current is NULL. I built a version of the natty mesa-7.10.1-0ubuntu3 with this patch from mesa git applied: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a99b23752b0182c64ebe1dc9c18ab821550771ff and the game no longer segfaults on startup (it seems to hang under wine 1.2 at a later point, though -- wine 1.3 works better but for purposes of this bug report I wanted to stick to in-Ubuntu versions.) So I guess this bug report is mostly so you can consider whether you want to backport that fix to the mesa for natty. ** Affects: mesa (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu-X, which is subscribed to mesa in Ubuntu. https://bugs.launchpad.net/bugs/743731 Title: [i915] SEGV in i915_dri.so:translate_program() under wine _______________________________________________ Mailing list: https://launchpad.net/~ubuntu-x-swat Post to : ubuntu-x-swat@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-x-swat More help : https://help.launchpad.net/ListHelp