From a5636c7bec4c80b9ae35655a82a044ac1a698b98 Mon Sep 17 00:00:00 2001 From: Jake Turner Date: Fri, 12 Nov 2021 05:27:06 +0000 Subject: [PATCH] When starting a chunk assert that it starts from 0 Help to catch the mistake of starting a chunk inside an active chunk ie. calling SCOPED_SERIALISE_CHUNK inside an existing SCOPED_SERIALISE_CHUNK --- renderdoc/serialise/serialiser.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/renderdoc/serialise/serialiser.cpp b/renderdoc/serialise/serialiser.cpp index a48538834..1f31f9bd4 100644 --- a/renderdoc/serialise/serialiser.cpp +++ b/renderdoc/serialise/serialiser.cpp @@ -341,6 +341,9 @@ void Serialiser::SetChunkMetadataRecording(uint32_t fla template <> uint32_t Serialiser::BeginChunk(uint32_t chunkID, uint64_t byteLength) { + // cannot start a chunk inside a chunk + RDCASSERTMSG("Beginning a chunk inside another chunk", m_Write->GetOffset() == 0, + m_Write->GetOffset()); { // chunk index needs to be valid RDCASSERT(chunkID > 0);