From d476f2768e4c26ae5a2671e3edfa7a5d0c31b1eb Mon Sep 17 00:00:00 2001 From: Dirk Eibach Date: Tue, 10 Dec 2024 16:03:16 +0100 Subject: [PATCH] Properly limit blob fragment size --- public/client/TracyProfiler.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/public/client/TracyProfiler.cpp b/public/client/TracyProfiler.cpp index 5abc1035..04770dc4 100644 --- a/public/client/TracyProfiler.cpp +++ b/public/client/TracyProfiler.cpp @@ -3273,7 +3273,8 @@ void Profiler::SendBlob( const char* ptr, size_t len ) MemWrite( &item.hdr.type, QueueType::BlobFragment ); while (len) { - uint32_t fragment_size = len > TargetFrameSize ? TargetFrameSize : len; + const uint32_t max_fragment_size = TargetFrameSize - QueueDataSize[(int)QueueType::BlobFragment] - sizeof( uint32_t ); + uint32_t fragment_size = len > max_fragment_size ? max_fragment_size : len; len -= fragment_size; NeedDataSize( QueueDataSize[(int)QueueType::BlobFragment] + sizeof( fragment_size ) + fragment_size );