wined3d: Reset the shader state on shader_*_destroy.

This commit is contained in:
Stefan Dösinger 2008-01-08 20:53:17 +01:00 committed by Alexandre Julliard
parent 09bf3d5aea
commit 4d0a609452
2 changed files with 6 additions and 0 deletions

View File

@ -1733,6 +1733,10 @@ static void shader_arb_cleanup(IWineD3DDevice *iface) {
}
static void shader_arb_destroy(IWineD3DBaseShader *iface) {
IWineD3DBaseShaderImpl *This = (IWineD3DBaseShaderImpl *) iface;
This->baseShader.prgId = 0;
This->baseShader.is_compiled = FALSE;
}
const shader_backend_t arb_program_shader_backend = {

View File

@ -3278,6 +3278,8 @@ static void shader_glsl_destroy(IWineD3DBaseShader *iface) {
TRACE("Deleting shader object %u\n", This->baseShader.prgId);
GL_EXTCALL(glDeleteObjectARB(This->baseShader.prgId));
checkGLcall("glDeleteObjectARB");
This->baseShader.prgId = 0;
This->baseShader.is_compiled = FALSE;
}
const shader_backend_t glsl_shader_backend = {