From d54660184acd659df52702bcc78c564096d62be4 Mon Sep 17 00:00:00 2001 From: Patric Stout Date: Sat, 13 May 2023 18:23:23 +0200 Subject: [PATCH] Fix: NewGRF Profile didn't stop if there were no events yet (#10816) This meant you could have the following situation: - You start a profile on a GRF with no events, for N days. - The days pass, the profile should stop. It doesn't. - The profile will never stop, even if the GRF start generating events. - There is no real way to discover this, so .. byebye memory? :) --- src/newgrf_profiling.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/newgrf_profiling.cpp b/src/newgrf_profiling.cpp index e0ea3925e1..18b2cd4dd4 100644 --- a/src/newgrf_profiling.cpp +++ b/src/newgrf_profiling.cpp @@ -98,6 +98,8 @@ uint32 NewGRFProfiler::Finish() if (this->calls.empty()) { IConsolePrint(CC_DEBUG, "Finished profile of NewGRF [{:08X}], no events collected, not writing a file.", BSWAP32(this->grffile->grfid)); + + this->Abort(); return 0; } @@ -116,7 +118,6 @@ uint32 NewGRFProfiler::Finish() } this->Abort(); - return total_microseconds; }