mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-06 01:50:38 +00:00
Delete AMD action callbacks if multiple passes happen. Closes #2958
This commit is contained in:
@@ -456,6 +456,8 @@ void VulkanReplay::FillTimersAMD(uint32_t *eventStartID, uint32_t *sampleIndex,
|
||||
{
|
||||
uint32_t maxEID = m_pDriver->GetMaxEID();
|
||||
|
||||
RDCASSERT(m_pAMDActionCallback == NULL);
|
||||
|
||||
m_pAMDActionCallback = new VulkanAMDActionCallback(m_pDriver, this, *sampleIndex, *eventIDs);
|
||||
|
||||
// replay the events to perform all the queries
|
||||
@@ -502,8 +504,13 @@ rdcarray<CounterResult> VulkanReplay::FetchCountersAMD(const rdcarray<GPUCounter
|
||||
|
||||
eventIDs.clear();
|
||||
|
||||
// delete any callback from a previous pass, we only use it for EID aliasing
|
||||
SAFE_DELETE(m_pAMDActionCallback);
|
||||
|
||||
FillTimersAMD(&eventStartID, &sampleIndex, &eventIDs);
|
||||
|
||||
// leave this one alive, it will be deleted below
|
||||
|
||||
m_pAMDCounters->EndPass();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user