修复未Preserve混淆后的名字,导致新增的混淆函数名与旧的混淆函数名冲突的严重bug

1.x
walon 2025-06-10 13:55:09 +08:00
parent 025f900f4e
commit 3867a98d48
2 changed files with 5 additions and 5 deletions

View File

@ -152,10 +152,10 @@ namespace Obfuz.ObfusPasses.SymbolObfus
string methodSig = TypeSigUtil.ComputeMethodDefSignature(method); string methodSig = TypeSigUtil.ComputeMethodDefSignature(method);
RenameMappingMethod rmm = rmt?.methods.GetValueOrDefault(methodSig); RenameMappingMethod rmm = rmt?.methods.GetValueOrDefault(methodSig);
//if (rmm != null && rmm.status == RenameStatus.Renamed) if (rmm != null && rmm.status == RenameStatus.Renamed)
//{ {
// nameMaker.AddPreservedName(method, rmm.newName); nameMaker.AddPreservedName(method, rmm.newName);
//} }
_methodRenames.Add(method, new RenameRecord _methodRenames.Add(method, new RenameRecord
{ {
status = RenameStatus.NotRenamed, status = RenameStatus.NotRenamed,

View File

@ -580,7 +580,7 @@ namespace Obfuz.ObfusPasses.SymbolObfus
} }
} }
} }
if (newVirtualMethodName == null || conflict || _nameMaker.IsNamePreserved(group, newVirtualMethodName)) if (newVirtualMethodName == null || conflict /*|| _nameMaker.IsNamePreserved(group, newVirtualMethodName)*/)
{ {
newVirtualMethodName = _nameMaker.GetNewName(group, method.Name); newVirtualMethodName = _nameMaker.GetNewName(group, method.Name);
} }