From 3b3257ad9956d2cde5173b3c455ff97b8ec52fd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Tue, 26 Aug 2025 10:24:30 +0200 Subject: [PATCH] Fix crash in debug builds in gpu.stats.get --- Core/Debugger/WebSocket/GPUStatsSubscriber.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Core/Debugger/WebSocket/GPUStatsSubscriber.cpp b/Core/Debugger/WebSocket/GPUStatsSubscriber.cpp index 5d26e12541..447fac2178 100644 --- a/Core/Debugger/WebSocket/GPUStatsSubscriber.cpp +++ b/Core/Debugger/WebSocket/GPUStatsSubscriber.cpp @@ -126,11 +126,12 @@ void WebSocketGPUStatsState::FlipListener() { float *sleepHistory; float *history = __DisplayGetFrameTimes(&valid, &stats.frameTimePos, &sleepHistory); - // TODO: 'valid' could be 0 => frameTimes[0] and sleepTimes[0] could lead to a crash stats.frameTimes.resize(valid); stats.sleepTimes.resize(valid); - memcpy(&stats.frameTimes[0], history, sizeof(double) * valid); - memcpy(&stats.sleepTimes[0], sleepHistory, sizeof(double) * valid); + if (valid > 0) { + memcpy(&stats.frameTimes[0], history, sizeof(double) * valid); + memcpy(&stats.sleepTimes[0], sleepHistory, sizeof(double) * valid); + } sendNext_ = false; }