mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-08-27 08:56:44 +00:00
Remove programs and pipelines when they are deleted
* This prevents shader editing from trying to modify deleted programs
This commit is contained in:
@@ -1254,6 +1254,8 @@ void WrappedOpenGL::glDeleteProgram(GLuint program)
|
||||
GLResource res = ProgramRes(GetCtx(), program);
|
||||
if(GetResourceManager()->HasCurrentResource(res))
|
||||
{
|
||||
m_Programs.erase(GetResourceManager()->GetID(res));
|
||||
|
||||
if(GetResourceManager()->HasResourceRecord(res))
|
||||
GetResourceManager()->GetResourceRecord(res)->Delete(GetResourceManager());
|
||||
GetResourceManager()->UnregisterResource(res);
|
||||
@@ -1744,6 +1746,8 @@ void WrappedOpenGL::glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
|
||||
GLResource res = ProgramPipeRes(GetCtx(), pipelines[i]);
|
||||
if(GetResourceManager()->HasCurrentResource(res))
|
||||
{
|
||||
m_Pipelines.erase(GetResourceManager()->GetID(res));
|
||||
|
||||
if(GetResourceManager()->HasResourceRecord(res))
|
||||
GetResourceManager()->GetResourceRecord(res)->Delete(GetResourceManager());
|
||||
GetResourceManager()->UnregisterResource(res);
|
||||
|
||||
Reference in New Issue
Block a user