Stefan Dösinger : wined3d: Destroy arb shaders on shader destroy.

Alexandre Julliard julliard at winehq.org
Mon Jan 14 09:33:23 CST 2008


Module: wine
Branch: master
Commit: 11561948818138c779a8eb260a133068a76106e4
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=11561948818138c779a8eb260a133068a76106e4

Author: Stefan Dösinger <stefan at codeweavers.com>
Date:   Tue Jan  8 20:56:22 2008 +0100

wined3d: Destroy arb shaders on shader destroy.

---

 dlls/wined3d/arb_program_shader.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
index 6bdf265..5c1e5c3 100644
--- a/dlls/wined3d/arb_program_shader.c
+++ b/dlls/wined3d/arb_program_shader.c
@@ -1734,7 +1734,12 @@ static void shader_arb_cleanup(IWineD3DDevice *iface) {
 
 static void shader_arb_destroy(IWineD3DBaseShader *iface) {
     IWineD3DBaseShaderImpl *This = (IWineD3DBaseShaderImpl *) iface;
+    WineD3D_GL_Info *gl_info = &((IWineD3DDeviceImpl *) This->baseShader.device)->adapter->gl_info;
 
+    ENTER_GL();
+    GL_EXTCALL(glDeleteProgramsARB(1, &This->baseShader.prgId));
+    checkGLcall("GL_EXTCALL(glDeleteProgramsARB(1, &This->baseShader.prgId))");
+    LEAVE_GL();
     This->baseShader.prgId = 0;
     This->baseShader.is_compiled = FALSE;
 }




More information about the wine-cvs mailing list