From 049825812eb84686f316b624ed25cb1d9dd41ac9 Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 28 Mar 2020 00:27:37 -0300 Subject: [PATCH] RSX: Restrict analyser loop error --- rpcs3/Emu/RSX/Common/ProgramStateCache.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/rpcs3/Emu/RSX/Common/ProgramStateCache.cpp b/rpcs3/Emu/RSX/Common/ProgramStateCache.cpp index 7bc2aa8b52..e75722c41d 100644 --- a/rpcs3/Emu/RSX/Common/ProgramStateCache.cpp +++ b/rpcs3/Emu/RSX/Common/ProgramStateCache.cpp @@ -49,6 +49,7 @@ vertex_program_utils::vertex_program_metadata vertex_program_utils::analyse_vert { u32 current_instruction = start; std::set conditional_targets; + bool has_printed_error = false; while (true) { @@ -58,8 +59,12 @@ vertex_program_utils::vertex_program_metadata vertex_program_utils::analyse_vert { if (!fast_exit) { - // This can be harmless if a dangling RET was encountered before - rsx_log.error("vp_analyser: Possible infinite loop detected"); + if (!has_printed_error) + { + // This can be harmless if a dangling RET was encountered before + rsx_log.error("vp_analyser: Possible infinite loop detected"); + has_printed_error = true; + } current_instruction++; continue; }