diff --git a/IDEHelper/Compiler/BfMangler.cpp b/IDEHelper/Compiler/BfMangler.cpp index 235c3f19..2f0905e2 100644 --- a/IDEHelper/Compiler/BfMangler.cpp +++ b/IDEHelper/Compiler/BfMangler.cpp @@ -1840,6 +1840,7 @@ void BfMSMangler::Mangle(StringImpl& name, bool is64Bit, BfMethodInstance* metho static int mangleIdx = 0; mangleIdx++; + int startNameLen = name.mLength; if ((methodInst->mMethodDef->mCLink) && (!methodInst->mMangleWithIdx)) { name += methodInst->mMethodDef->mName; @@ -1860,7 +1861,7 @@ void BfMSMangler::Mangle(StringImpl& name, bool is64Bit, BfMethodInstance* metho HandleCustomAttributes(methodInst->GetCustomAttributes(), typeInst->mConstHolder, mangleContext.mModule, name, isCMangle, mangleContext.mCPPMangle); if (isCMangle) name += methodInst->mMethodDef->mName; - if (!name.IsEmpty()) + if (name.mLength > startNameLen) return; name += '?';