http://bugs.winehq.org/show_bug.cgi?id=15644
--- Comment #6 from H. Verbeet hverbeet@gmail.com 2008-10-17 03:19:06 --- (In reply to comment #5)
(In reply to comment #3)
I don't have the game, I'm afraid. Could you figure out where/why the GL error is generated?
You mean by using a debugger and dumping the callstack, or something like that?
checkGLcall() is just a wrapper around glGetError(). That means it will dump any GL errors generated since the last time checkGLcall() was called. So while the error could be caused by the glUseProgramObjectARB() call, it's rather unlikely. shader_glsl_deselect_depth_blt() is called from depth_blt() in drawprim.c. depth_blt() is called from surface_load_ds_location() in surface.c, but is preceeded by a checkGLcall() in both cases, so the GL call that generates the error happens somewhere between the start and end of depth_blt(). Just adding a few more checkGLcall()'s to depth_blt() should be enough to narrow it down to a specific call. Note that the error could also be generated by shader_glsl_select_depth_blt() though, since that's called by depth_blt().