From bb9d784090f6ba6aa26f5ecaa091437fb001d306 Mon Sep 17 00:00:00 2001 From: walon Date: Mon, 7 Apr 2025 09:02:43 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=AF=E6=8C=81rename=20property=E5=92=8Ceve?= =?UTF-8?q?nt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Editor/Rename/NameMaker.cs | 7 +++++++ Editor/Rename/SymbolRename.cs | 22 ++++++++++++++-------- 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/Editor/Rename/NameMaker.cs b/Editor/Rename/NameMaker.cs index 87f33c3..4036a2e 100644 --- a/Editor/Rename/NameMaker.cs +++ b/Editor/Rename/NameMaker.cs @@ -17,6 +17,8 @@ namespace Obfuz.Rename string GetNewName(MethodDef methodDef, string originalName); + string GetNewName(ParamDef param, string originalName); + string GetNewName(FieldDef fieldDef, string originalName); string GetNewName(PropertyDef propertyDef, string originalName); @@ -51,6 +53,11 @@ namespace Obfuz.Rename return GetDefaultNewName(originalName); } + public string GetNewName(ParamDef param, string originalName) + { + return GetDefaultNewName(originalName); + } + public string GetNewName(FieldDef fieldDef, string originalName) { return GetDefaultNewName(originalName); diff --git a/Editor/Rename/SymbolRename.cs b/Editor/Rename/SymbolRename.cs index 99f5f27..c92dc42 100644 --- a/Editor/Rename/SymbolRename.cs +++ b/Editor/Rename/SymbolRename.cs @@ -14,11 +14,13 @@ namespace Obfuz private readonly ObfuscatorContext _ctx; private readonly IRenamePolicy _renamePolicy; + private readonly INameMaker _nameMaker; public SymbolRename(ObfuscatorContext ctx) { _ctx = ctx; - _renamePolicy = new RenamePolicy(); + _renamePolicy = ctx.renamePolicy; + _nameMaker = ctx.nameMaker; } public void Process() @@ -49,7 +51,10 @@ namespace Obfuz Rename(method); foreach (Parameter param in method.Parameters) { - Rename(param.ParamDef); + if (param.ParamDef != null) + { + Rename(param.ParamDef); + } } } } @@ -88,7 +93,7 @@ namespace Obfuz private void Rename(ModuleDefMD mod) { string oldName = MetaUtil.GetModuleNameWithoutExt(mod.Name); - string newName = _ctx.nameMaker.GetNewName(mod, oldName); + string newName = _nameMaker.GetNewName(mod, oldName); mod.Name = $"{newName}.dll"; Debug.Log($"rename module. oldName:{oldName} newName:{newName}"); foreach (ObfuzAssemblyInfo ass in GetReferenceMeAssemblies(mod)) @@ -116,12 +121,12 @@ namespace Obfuz } else { - newNamespace = _ctx.nameMaker.GetNewNamespace(type, oldNamespace); + newNamespace = _nameMaker.GetNewNamespace(type, oldNamespace); type.Namespace = newNamespace; } string oldName = type.Name; - string newName = _ctx.nameMaker.GetNewName(type, oldName); + string newName = _nameMaker.GetNewName(type, oldName); type.Name = newName; string newFullName = type.FullName; Debug.Log($"rename typedef. assembly:{type.Module.Name} oldName:{oldFullName} => newName:{newFullName}"); @@ -151,7 +156,7 @@ namespace Obfuz private void Rename(FieldDef field) { string oldName = field.Name; - string newName = _ctx.nameMaker.GetNewName(field, oldName); + string newName = _nameMaker.GetNewName(field, oldName); foreach (ObfuzAssemblyInfo ass in GetReferenceMeAssemblies(field.DeclaringType.Module)) { foreach (MemberRef memberRef in ass.module.GetMemberRefs()) @@ -211,16 +216,17 @@ namespace Obfuz private void Rename(ParamDef param) { - + param.Name = _nameMaker.GetNewName(param, param.Name); } private void Rename(EventDef eventDef) { - + eventDef.Name = _nameMaker.GetNewName(eventDef, eventDef.Name); } private void Rename(PropertyDef property) { + property.Name = _nameMaker.GetNewName(property, property.Name); } } }