From a2753429bf1f8035d19e230248bd515029339050 Mon Sep 17 00:00:00 2001 From: baldurk Date: Fri, 14 Aug 2026 23:17:27 +0100 Subject: [PATCH] Fix fixup of chunk length for pre-allocated 64-bit sized chunks --- renderdoc/serialise/serialiser.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/renderdoc/serialise/serialiser.cpp b/renderdoc/serialise/serialiser.cpp index a3ee578fe..4122dee9b 100644 --- a/renderdoc/serialise/serialiser.cpp +++ b/renderdoc/serialise/serialiser.cpp @@ -500,13 +500,15 @@ void Serialiser::EndChunk() RDCASSERT(curOffset > chunkOffset); - uint64_t chunkLength = (curOffset - chunkOffset) - sizeof(uint32_t); + uint64_t chunkLength = (curOffset - chunkOffset); if(m_ChunkMetadata.length == LARGE_CHUNK_SIZE) { + chunkLength -= sizeof(uint64_t); m_Write->WriteAt(chunkOffset, chunkLength); } else { + chunkLength -= sizeof(uint32_t); if(chunkLength > 0xffffffff) { RDCERR("!!! CHUNK LENGTH %llu EXCEEDED 32 BIT VALUE. CAPTURE WILL BE CORRUPTED. !!!",