From 2357921180fb2898fb34ba8ec4a29f6e70667e7b Mon Sep 17 00:00:00 2001 From: Baldur Karlsson Date: Tue, 24 Jun 2014 15:48:15 +0100 Subject: [PATCH] Silently drop waits on non-existant syncs (from previous frames) --- renderdoc/driver/gl/wrappers/gl_query_funcs.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/renderdoc/driver/gl/wrappers/gl_query_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_query_funcs.cpp index 0f0cdb9a1..3b8520dcc 100644 --- a/renderdoc/driver/gl/wrappers/gl_query_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_query_funcs.cpp @@ -87,8 +87,11 @@ bool WrappedOpenGL::Serialise_glClientWaitSync(GLsync sync, GLbitfield flags, GL if(m_State < WRITING) { - GLResource res = GetResourceManager()->GetLiveResource(id); - glClientWaitSync(GetResourceManager()->GetSync(res.name), Flags, Timeout); + if(GetResourceManager()->HasLiveResource(id)) + { + GLResource res = GetResourceManager()->GetLiveResource(id); + glClientWaitSync(GetResourceManager()->GetSync(res.name), Flags, Timeout); + } } return true; @@ -117,8 +120,11 @@ bool WrappedOpenGL::Serialise_glWaitSync(GLsync sync, GLbitfield flags, GLuint64 if(m_State < WRITING) { - GLResource res = GetResourceManager()->GetLiveResource(id); - glWaitSync(GetResourceManager()->GetSync(res.name), Flags, Timeout); + if(GetResourceManager()->HasLiveResource(id)) + { + GLResource res = GetResourceManager()->GetLiveResource(id); + glWaitSync(GetResourceManager()->GetSync(res.name), Flags, Timeout); + } } return true;