From 2492ebf26d5ceca057b9a4cfbcba42a34d9db7e9 Mon Sep 17 00:00:00 2001 From: baldurk Date: Thu, 24 Oct 2019 12:29:45 +0100 Subject: [PATCH] Don't register debug callback on GL when structured-exporting --- renderdoc/driver/gl/gl_debug.cpp | 4 ++++ renderdoc/driver/gl/gl_driver.cpp | 2 -- renderdoc/driver/gl/gl_replay.cpp | 2 ++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/renderdoc/driver/gl/gl_debug.cpp b/renderdoc/driver/gl/gl_debug.cpp index 4064f8831..a360eaf52 100644 --- a/renderdoc/driver/gl/gl_debug.cpp +++ b/renderdoc/driver/gl/gl_debug.cpp @@ -1150,6 +1150,8 @@ void GLReplay::DeleteDebugData() MakeCurrentReplayContext(&m_ReplayCtx); + GL.glDebugMessageCallback(NULL, NULL); + if(DebugData.overlayProg) drv.glDeleteProgram(DebugData.overlayProg); @@ -1159,6 +1161,8 @@ void GLReplay::DeleteDebugData() MakeCurrentReplayContext(m_DebugCtx); + GL.glDebugMessageCallback(NULL, NULL); + ClearPostVSCache(); drv.glDeleteFramebuffers(1, &DebugData.overlayFBO); diff --git a/renderdoc/driver/gl/gl_driver.cpp b/renderdoc/driver/gl/gl_driver.cpp index 1154a3c39..dc28046e4 100644 --- a/renderdoc/driver/gl/gl_driver.cpp +++ b/renderdoc/driver/gl/gl_driver.cpp @@ -661,8 +661,6 @@ WrappedOpenGL::WrappedOpenGL(GLPlatform &platform) if(RenderDoc::Inst().IsReplayApp()) { m_State = CaptureState::LoadingReplaying; - - RegisterDebugCallback(); } else { diff --git a/renderdoc/driver/gl/gl_replay.cpp b/renderdoc/driver/gl/gl_replay.cpp index 7080ce218..9deb4aa87 100644 --- a/renderdoc/driver/gl/gl_replay.cpp +++ b/renderdoc/driver/gl/gl_replay.cpp @@ -260,6 +260,8 @@ void GLReplay::SetReplayData(GLWindowingData data) if(m_pDriver != NULL) m_pDriver->RegisterReplayContext(m_ReplayCtx, NULL, true, true); + m_pDriver->RegisterDebugCallback(); + InitDebugData(); if(!HasDebugContext())