http://bugs.winehq.org/show_bug.cgi?id=31716
--- Comment #7 from Dmitry Sokolov sokolov_d_s@mail.ru 2012-09-20 09:32:25 CDT --- Backtrace: =>0 0x7dfe959b in winex11 (+0x3959b) (0x029be318) 1 0x7e697239 in wined3d (+0xb7238) (0x029be3b8) 2 0x7e697c85 in wined3d (+0xb7c84) (0x029be598) 3 0x7e6954e4 wined3d_surface_blt+0x19a3() in wined3d (0x029be668)
I don't know why the first three item in the backtrace log has no symbols. I have already read the Wine Dev Guide chapters I.1-2 and do all that says. If you can point me the right way to configure dbg symbols for wine you're welcome.
I've got also the stderr log (WINEDEBUG="+relay,+seh,+tid,+x11drv,+d3d,+d3d_surface,+d3d_texture") It's almost 2GB long. Here's the part of log where exception occured:
003e:Call opengl32.wglGetCurrentContext() ret=7e608b5e 003e:Ret opengl32.wglGetCurrentContext() retval=00000000 ret=7e608b5e 003e:trace:d3d_surface:surface_load surface 0x1764b0, srgb 0. 003e:trace:d3d_surface:surface_load surface is already in texture 003e:trace:d3d:context_release Releasing context 0x202ab0, level 1. 003e:warn:d3d:context_release Context 0x202ab0 is not the current context. 003e:trace:d3d:context_acquire device 0x17a0f8, target 0x1764b0. 003e:trace:d3d:context_acquire Rendering onscreen. 003e:trace:d3d:context_enter Entering context 0x202ab0, level 1. 003e:Call opengl32.wglGetCurrentContext() ret=7e608b5e 003e:Ret opengl32.wglGetCurrentContext() retval=00000000 ret=7e608b5e 003e:trace:d3d_surface:surface_get_gl_buffer surface 0x1764b0. 003e:trace:d3d_surface:surface_get_gl_buffer Returning GL_FRONT 003e:fixme:d3d:debug_fbostatus Unrecognied FBO status 0x00000000 003e:fixme:d3d:context_check_fbo_status FBO status unrecognized (0) 003e:err:d3d:context_check_fbo_status FBO 0 is incomplete, driver bug? 003e:trace:d3d:SetupForBlit Setting up context 0x202ab0 for blitting 003e:trace:d3d:SetupForBlit Context is already set up for blitting, nothing to do 003e:Call user32.OffsetRect(029be380,00000000,00000000) ret=7e690c86 003e:Ret user32.OffsetRect() retval=00000001 ret=7e690c86 003e:trace:d3d:dump_color_fixup_desc X: CHANNEL_SOURCE_X 003e:trace:d3d:dump_color_fixup_desc Y: CHANNEL_SOURCE_Y 003e:trace:d3d:dump_color_fixup_desc Z: CHANNEL_SOURCE_Z 003e:trace:d3d:dump_color_fixup_desc W: CHANNEL_SOURCE_W 003e:trace:d3d_surface:surface_blt_to_drawable glDisable(GL_ALPHA_TEST) call ok surface.c / 5370 003e:trace:d3d_surface:draw_textured_quad glEnable(bind_target) call ok surface.c / 326 003e:trace:d3d:context_bind_texture glBindTexture call ok context.c / 1968 003e:trace:d3d_surface:draw_textured_quad glTexParameteri call ok surface.c / 333 003e:trace:d3d_surface:draw_textured_quad glTexParameteri call ok surface.c / 336 003e:trace:d3d_surface:draw_textured_quad glTexEnvi call ok surface.c / 342 003e:trace:d3d:context_bind_texture glBindTexture call ok context.c / 1986 003e:trace:seh:raise_exception code=c0000005 flags=0 addr=0x7dfe959b ip=7dfe959b tid=003e 003e:trace:seh:raise_exception info[0]=00000000 003e:trace:seh:raise_exception info[1]=00000068 003e:trace:seh:raise_exception eax=00000000 ebx=7e027ff4 ecx=001764b0 edx=00000000 esi=00000000 edi=7e02d6dc 003e:trace:seh:raise_exception ebp=029be318 esp=029be2d4 cs=0073 ds=007b es=007b fs=0033 gs=003b flags=00210246 003e:trace:seh:call_vectored_handlers calling handler at 0x7e0f7d80 code=c0000005 flags=0
I've seen the function 'context_bind_texture' in 'wine3d/context.c' and I think the problem is at line 1977
const struct wined3d_device *device = context->swapchain->device;
The program flow doesn't step into 'switch' statement at line 1979. Otherwise it'll log a string from a 'case' block.
May be the 'context->swapchain' is damaged because of:
003e:fixme:d3d:debug_fbostatus Unrecognied FBO status 0x00000000 003e:fixme:d3d:context_check_fbo_status FBO status unrecognized (0) 003e:err:d3d:context_check_fbo_status FBO 0 is incomplete, driver bug?