From 2902fe07fd82d4c2df8f576f445054ac2ae6067b Mon Sep 17 00:00:00 2001 From: baldurk Date: Wed, 31 May 2017 14:25:50 +0100 Subject: [PATCH] Delete saved deferred context state for restore, to avoid leaking refs * If you replayed an Execute and created the deferred stave state, and then didn't replay the Finish (e.g. if an event in between was selected) this would leak references and keep buffers alive after shutdown. --- renderdoc/driver/d3d11/d3d11_context.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/renderdoc/driver/d3d11/d3d11_context.cpp b/renderdoc/driver/d3d11/d3d11_context.cpp index 5873b43b0..4e5d19bce 100644 --- a/renderdoc/driver/d3d11/d3d11_context.cpp +++ b/renderdoc/driver/d3d11/d3d11_context.cpp @@ -206,6 +206,8 @@ WrappedID3D11DeviceContext::~WrappedID3D11DeviceContext() SAFE_RELEASE(m_pRealContext2); SAFE_RELEASE(m_pRealContext3); + SAFE_DELETE(m_DeferredSavedState); + SAFE_DELETE(m_CurrentPipelineState); SAFE_RELEASE(m_pRealContext);