Procházet zdrojové kódy

Type deletion protection in mPopulateTypeWorkList

Brian Fiete před 3 roky
rodič
revize
c73cf12f5e

+ 2 - 3
IDEHelper/Compiler/BfCompiler.cpp

@@ -9927,9 +9927,8 @@ BF_EXPORT const char* BF_CALLTYPE BfCompiler_GetCollapseRegions(BfCompiler* bfCo
 				else
 				{
 					int dollarPos = (int)emitParser->mFileName.LastIndexOf('$');
-					if (dollarPos == -1)
-						return -1;
-					outString += emitParser->mFileName.Substring(dollarPos + 1);
+					if (dollarPos != -1)						
+						outString += emitParser->mFileName.Substring(dollarPos + 1);
 				}
 				outString += "\n";
 			}

+ 2 - 1
IDEHelper/Compiler/BfContext.cpp

@@ -464,7 +464,8 @@ bool BfContext::ProcessWorkList(bool onlyReifiedTypes, bool onlyReifiedMethods)
 				else
 					useModule = mUnreifiedModule;
 			}
-			useModule->PopulateType(type, BfPopulateType_Full);			
+			if (!type->IsDeleting())
+				useModule->PopulateType(type, BfPopulateType_Full);
 			mCompiler->mStats.mQueuedTypesProcessed++;
 			mCompiler->UpdateCompletion();
 			didWork = true;