diff --git a/renderdoc/driver/d3d11/d3d11_context.cpp b/renderdoc/driver/d3d11/d3d11_context.cpp index df762ba96..c13365338 100644 --- a/renderdoc/driver/d3d11/d3d11_context.cpp +++ b/renderdoc/driver/d3d11/d3d11_context.cpp @@ -1290,7 +1290,7 @@ ReplayStatus WrappedID3D11DeviceContext::ReplayLog(CaptureState readType, uint32 LoadProgress::FrameEventsRead, float(m_CurChunkOffset - startOffset) / float(ser.GetReader()->GetSize())); - if((SystemChunk)chunktype == SystemChunk::CaptureEnd) + if((SystemChunk)chunktype == SystemChunk::CaptureEnd || ser.GetReader()->AtEnd()) break; m_LastChunk = chunktype; diff --git a/renderdoc/driver/d3d12/d3d12_commands.cpp b/renderdoc/driver/d3d12/d3d12_commands.cpp index bdf27a33a..c04d2c0d3 100644 --- a/renderdoc/driver/d3d12/d3d12_commands.cpp +++ b/renderdoc/driver/d3d12/d3d12_commands.cpp @@ -945,7 +945,7 @@ ReplayStatus WrappedID3D12CommandQueue::ReplayLog(CaptureState readType, uint32_ LoadProgress::FrameEventsRead, float(m_Cmd.m_CurChunkOffset - startOffset) / float(ser.GetReader()->GetSize())); - if((SystemChunk)context == SystemChunk::CaptureEnd) + if((SystemChunk)context == SystemChunk::CaptureEnd || ser.GetReader()->AtEnd()) break; // break out if we were only executing one event diff --git a/renderdoc/driver/gl/gl_driver.cpp b/renderdoc/driver/gl/gl_driver.cpp index 8aa8165c3..74dc92840 100644 --- a/renderdoc/driver/gl/gl_driver.cpp +++ b/renderdoc/driver/gl/gl_driver.cpp @@ -5113,7 +5113,7 @@ ReplayStatus WrappedOpenGL::ContextReplayLog(CaptureState readType, uint32_t sta LoadProgress::FrameEventsRead, float(m_CurChunkOffset - startOffset) / float(ser.GetReader()->GetSize())); - if((SystemChunk)chunktype == SystemChunk::CaptureEnd) + if((SystemChunk)chunktype == SystemChunk::CaptureEnd || ser.GetReader()->AtEnd()) break; m_LastChunk = chunktype; diff --git a/renderdoc/driver/vulkan/vk_core.cpp b/renderdoc/driver/vulkan/vk_core.cpp index 3b62482d8..6fd1ce94f 100644 --- a/renderdoc/driver/vulkan/vk_core.cpp +++ b/renderdoc/driver/vulkan/vk_core.cpp @@ -2492,7 +2492,7 @@ ReplayStatus WrappedVulkan::ContextReplayLog(CaptureState readType, uint32_t sta LoadProgress::FrameEventsRead, float(m_CurChunkOffset - startOffset) / float(ser.GetReader()->GetSize())); - if((SystemChunk)chunktype == SystemChunk::CaptureEnd) + if((SystemChunk)chunktype == SystemChunk::CaptureEnd || ser.GetReader()->AtEnd()) break; // break out if we were only executing one event