[Bug 21361] New: Segmentation fault (NULL dereference) while trying to run Tony Hawk 2
wine-bugs at winehq.org
wine-bugs at winehq.org
Wed Jan 13 18:59:46 CST 2010
http://bugs.winehq.org/show_bug.cgi?id=21361
Summary: Segmentation fault (NULL dereference) while trying to
run Tony Hawk 2
Product: Wine
Version: 1.1.36
Platform: x86
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: directx-d3d
AssignedTo: wine-bugs at winehq.org
ReportedBy: lmage11 at twcny.rr.com
Created an attachment (id=25722)
--> (http://bugs.winehq.org/attachment.cgi?id=25722)
Messages and backtrace that wine produces
I'm trying to relive my prepubescent life by playing Tony Hawk 2, and wine is
not making it easy. :)
At first I got this, and nothing else happened (I got a black screen):
fixme:mixer:ALSA_MixerInit No master control found on VirMIDI, disabling mixer
fixme:ddraw:DirectDrawEnumerateExA flags 0x00000007 not handled
fixme:d3d_caps:init_driver_info Unhandled vendor 8086.
fixme:win:EnumDisplayDevicesW ((null),0,0x32ea78,0x00000000), stub!
fixme:x11drv:X11DRV_desktop_SetCurrentMode Cannot change screen BPP from 32 to
16
fixme:d3d:WineD3D_ChoosePixelFormat Add OpenGL context recreation support to
SetDepthStencilSurface
fixme:dsalsa:IDsDriverBufferImpl_SetVolumePan (0x13a618,0x1cd290): stub
err:ddraw:PixelFormat_WineD3DtoDD Can't translate this Pixelformat 58
err:ddraw:PixelFormat_WineD3DtoDD Can't translate this Pixelformat 64
I then changed X11's screen depth to 16, and got some different errors and a
segfault. This bug is about the segfault, even though I suspect that the
segfault wouldn't happen if the previous errors were resolved. Backtraces from
wine and gdb are attached.
I pretty much know how the segfault happens on a low level, but I don't know
what the correct resolution is because I don't know anything about D3D or 3D in
general, let alone how wine implements that stuff. Here's the "flow" of code
which causes the segfault to happen:
IDirectDrawImpl_CreateSurface is called
IDirectDrawImpl_AttachD3DDevice is called
IWineD3DDevice_Init3D is called
IWineD3DDeviceParent_CreateSwapChain call fails
Jumps to err_out label, This->swapchains is never allocated
Error handling causes stuff to return until we're in
IDirectDrawImpl_CreateSurface again
... and you can see the rest from the backtraces
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
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