2
0
Эх сурвалжийг харах

Fixed GetMethodByName for methods in conditional extensions

Brian Fiete 3 жил өмнө
parent
commit
48571d374f

+ 7 - 3
IDEHelper/Compiler/BfModule.cpp

@@ -10827,10 +10827,14 @@ BfModuleMethodInstance BfModule::GetMethodByName(BfTypeInstance* typeInstance, c
 
 
 		while (methodDef != NULL)
 		while (methodDef != NULL)
 		{
 		{
- 			if ((methodDef->mMethodType != BfMethodType_Mixin) &&
+			if ((methodDef->mMethodType != BfMethodType_Mixin) &&
 				(methodDef->mGenericParams.size() == 0) &&
 				(methodDef->mGenericParams.size() == 0) &&
- 				((paramCount == -1) || (paramCount == (int)methodDef->mParams.size())))
- 				return GetMethodInstanceAtIdx(typeInstance, methodDef->mIdx);
+				((paramCount == -1) || (paramCount == (int)methodDef->mParams.size())))
+			{
+				auto moduleMethodInstance = GetMethodInstanceAtIdx(typeInstance, methodDef->mIdx);
+				if (moduleMethodInstance)
+					return moduleMethodInstance;
+			}
 			methodDef = methodDef->mNextWithSameName;
 			methodDef = methodDef->mNextWithSameName;
  		}
  		}