From fbcec910741e7d3db6362e7ced2fba4cc684dbfd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Sun, 11 Oct 2026 14:07:11 +0200 Subject: [PATCH] Debugger: Send whole pixels in gpu.buffer.* base64 responses StreamBufferToBase64 sent width * height bytes, so any buffer with more than one byte per pixel came back truncated: half a D16 depth buffer, a quarter of a D32F or 8888 one. Co-Authored-By: Claude Opus 5.5 (1M context) --- Core/Debugger/WebSocket/GPUBufferSubscriber.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Core/Debugger/WebSocket/GPUBufferSubscriber.cpp b/Core/Debugger/WebSocket/GPUBufferSubscriber.cpp index 89e7e14033..637b89fcc2 100644 --- a/Core/Debugger/WebSocket/GPUBufferSubscriber.cpp +++ b/Core/Debugger/WebSocket/GPUBufferSubscriber.cpp @@ -189,7 +189,7 @@ static std::string DescribeFormat(GPUDebugBufferFormat fmt) { // Note: Calls req.Respond(). Other data can be added afterward. static bool StreamBufferToBase64(DebuggerRequest &req, const GPUDebugBuffer &buf, bool isFramebuffer) { - size_t length = buf.GetStride() * buf.GetHeight(); + size_t length = buf.GetStride() * buf.GetHeight() * buf.PixelSize(); auto &json = req.Respond(); json.writeInt("width", buf.GetStride());