Abort early if a fatal error is encountered during load

This commit is contained in:
baldurk
2022-12-21 23:03:40 +00:00
parent fee0218a33
commit 9ad6a5d431
3 changed files with 12 additions and 0 deletions
@@ -1070,6 +1070,9 @@ RDResult WrappedID3D12CommandQueue::ReplayLog(CaptureState readType, uint32_t st
return m_Cmd.m_FailedReplayResult;
}
if(m_pDevice->HasFatalError())
return ResultCode::Succeeded;
RenderDoc::Inst().SetProgress(
LoadProgress::FrameEventsRead,
float(m_Cmd.m_CurChunkOffset - startOffset) / float(ser.GetReader()->GetSize()));
+3
View File
@@ -4246,6 +4246,9 @@ RDResult WrappedID3D12Device::ReadLogInitialisation(RDCFile *rdc, bool storeStru
return m_FailedReplayResult;
}
if(m_FatalError != ResultCode::Succeeded)
return m_FatalError;
uint64_t offsetEnd = reader->GetOffset();
RenderDoc::Inst().SetProgress(LoadProgress::FileInitialRead,
+6
View File
@@ -2705,6 +2705,9 @@ RDResult WrappedVulkan::ReadLogInitialisation(RDCFile *rdc, bool storeStructured
return m_FailedReplayResult;
}
if(m_FatalError != ResultCode::Succeeded)
return m_FatalError;
uint64_t offsetEnd = reader->GetOffset();
// only set progress after we've initialised the debug manager, to prevent progress jumping
@@ -2972,6 +2975,9 @@ RDResult WrappedVulkan::ContextReplayLog(CaptureState readType, uint32_t startEv
return m_FailedReplayResult;
}
if(m_FatalError != ResultCode::Succeeded)
return m_FatalError;
RenderDoc::Inst().SetProgress(
LoadProgress::FrameEventsRead,
float(m_CurChunkOffset - startOffset) / float(ser.GetReader()->GetSize()));