From 8b2aae11d1720afee11404c413c029687583750f Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Sat, 12 Feb 2022 15:03:41 -0500 Subject: [PATCH] Fixed infinite loop during TryDevirtualizeCall with void call --- IDEHelper/Compiler/BfExprEvaluator.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/IDEHelper/Compiler/BfExprEvaluator.cpp b/IDEHelper/Compiler/BfExprEvaluator.cpp index 4797d4ea..70fd9731 100644 --- a/IDEHelper/Compiler/BfExprEvaluator.cpp +++ b/IDEHelper/Compiler/BfExprEvaluator.cpp @@ -2862,6 +2862,8 @@ void BfMethodMatcher::TryDevirtualizeCall(BfTypedValue target, BfTypedValue* ori auto underlyingType = checkType->GetUnderlyingType(); if ((underlyingType != NULL) && (underlyingType->IsWrappableType())) checkTypeInst = mModule->GetWrappedStructType(underlyingType); + if (checkTypeInst == checkType) + break; } }