Module: wine Branch: master Commit: b37cc08721bb4c60b7842a0d5b1af81fe8820477 URL: http://source.winehq.org/git/wine.git/?a=commit;h=b37cc08721bb4c60b7842a0d5b...
Author: H. Verbeet hverbeet@gmail.com Date: Thu Jul 10 17:57:35 2008 +0200
wined3d: Don't call shader_select() in depth_blt().
Calling shader_select() from inside depth_blt() isn't necessarily safe. shader_select() assumes CompileShader() has been called for the current shaders, but that depends on STATE_VSHADER / STATE_PIXELSHADER being applied. That isn't always true when depth_blt() gets called, with the result that sometimes GLSL programs could be created with no shader objects attached.
---
dlls/wined3d/arb_program_shader.c | 52 ++++++++++++++++++++++++++++++----- dlls/wined3d/ati_fragment_shader.c | 5 +++ dlls/wined3d/baseshader.c | 2 + dlls/wined3d/drawprim.c | 6 +--- dlls/wined3d/glsl_shader.c | 14 +++++++++ dlls/wined3d/wined3d_private.h | 3 ++ 6 files changed, 69 insertions(+), 13 deletions(-)
Diff: http://source.winehq.org/git/wine.git/?a=commitdiff;h=b37cc08721bb4c60b7842a...