From 6e989ccd364ad009f6d42d887e594871837a65ce Mon Sep 17 00:00:00 2001 From: walon Date: Sun, 25 May 2025 08:39:43 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=BD=93=E4=B8=80=E4=B8=AATy?= =?UTF-8?q?pe=E4=B9=8B=E5=89=8D=E4=B8=BA=E4=B8=8D=E9=9C=80=E8=A6=81?= =?UTF-8?q?=E6=B7=B7=E6=B7=86=E5=90=8D=E5=AD=97=EF=BC=8C=E5=90=8E=E9=9D=A2?= =?UTF-8?q?=E6=94=B9=E4=B8=BA=E9=9C=80=E8=A6=81=E6=B7=B7=E6=B7=86=E6=97=B6?= =?UTF-8?q?=EF=BC=8C=E4=BB=8D=E7=84=B6=E4=BD=BF=E7=94=A8mapping=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E4=B8=AD=E7=9A=84newFullname=E4=BD=9C=E4=B8=BA?= =?UTF-8?q?=E6=96=B0=E5=90=8D=E5=AD=97=EF=BC=8C=E8=80=8C=E5=AE=83=E7=9A=84?= =?UTF-8?q?newFullname=E4=B8=BA=E7=A9=BA=E5=AD=97=E7=AC=A6=E4=B8=B2?= =?UTF-8?q?=E4=B8=B2=EF=BC=8C=E5=AF=BC=E8=87=B4il2cpp=E7=94=9F=E6=88=90?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=87=BA=E7=8E=B0=E9=97=AE=E9=A2=98=E7=9A=84?= =?UTF-8?q?=E4=B8=A5=E9=87=8Dbug=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SymbolObfus/RenameRecordMap.cs | 51 +++++++++++++------ 1 file changed, 35 insertions(+), 16 deletions(-) diff --git a/com.code-philosophy.obfuz/Editor/ObfusPasses/SymbolObfus/RenameRecordMap.cs b/com.code-philosophy.obfuz/Editor/ObfusPasses/SymbolObfus/RenameRecordMap.cs index 1188599..256a245 100644 --- a/com.code-philosophy.obfuz/Editor/ObfusPasses/SymbolObfus/RenameRecordMap.cs +++ b/com.code-philosophy.obfuz/Editor/ObfusPasses/SymbolObfus/RenameRecordMap.cs @@ -128,7 +128,7 @@ namespace Obfuz.ObfusPasses.SymbolObfus nameMaker.AddPreservedNamespace(type, type.Namespace); string fullTypeName = type.FullName; RenameMappingType rmt = rma?.types.GetValueOrDefault(fullTypeName); - if (rmt != null) + if (rmt != null && rmt.status == RenameStatus.Renamed) { var (newNamespace, newName) = MetaUtil.SplitNamespaceAndName(rmt.newFullName); nameMaker.AddPreservedNamespace(type, newNamespace); @@ -149,7 +149,7 @@ namespace Obfuz.ObfusPasses.SymbolObfus string methodSig = TypeSigUtil.ComputeMethodDefSignature(method); RenameMappingMethod rmm = rmt?.methods.GetValueOrDefault(methodSig); - if (rmm != null) + if (rmm != null && rmm.status == RenameStatus.Renamed) { nameMaker.AddPreservedName(method, rmm.newName); } @@ -168,7 +168,7 @@ namespace Obfuz.ObfusPasses.SymbolObfus nameMaker.AddPreservedName(field, field.Name); string fieldSig = TypeSigUtil.ComputeFieldDefSignature(field); RenameMappingField rmf = rmt?.fields.GetValueOrDefault(fieldSig); - if (rmf != null) + if (rmf != null && rmf.status == RenameStatus.Renamed) { nameMaker.AddPreservedName(field, rmf.newName); } @@ -186,7 +186,7 @@ namespace Obfuz.ObfusPasses.SymbolObfus nameMaker.AddPreservedName(property, property.Name); string propertySig = TypeSigUtil.ComputePropertyDefSignature(property); RenameMappingProperty rmp = rmt?.properties.GetValueOrDefault(propertySig); - if (rmp != null) + if (rmp != null && rmp.status == RenameStatus.Renamed) { nameMaker.AddPreservedName(property, rmp.newName); } @@ -204,7 +204,7 @@ namespace Obfuz.ObfusPasses.SymbolObfus nameMaker.AddPreservedName(eventDef, eventDef.Name); string eventSig = TypeSigUtil.ComputeEventDefSignature(eventDef); RenameMappingEvent rme = rmt?.events.GetValueOrDefault(eventSig); - if (rme != null) + if (rme != null && rme.status == RenameStatus.Renamed) { nameMaker.AddPreservedName(eventDef, rme.newName); } @@ -627,9 +627,12 @@ namespace Obfuz.ObfusPasses.SymbolObfus if (_typeRenames.TryGetValue(type, out var record) && record.renameMappingData != null) { var rmt = (RenameMappingType)record.renameMappingData; - Assert.IsFalse(string.IsNullOrWhiteSpace(rmt.newFullName)); - (newNamespace, newName) = MetaUtil.SplitNamespaceAndName(rmt.newFullName); - return true; + if (rmt.status == RenameStatus.Renamed) + { + Assert.IsFalse(string.IsNullOrWhiteSpace(rmt.newFullName)); + (newNamespace, newName) = MetaUtil.SplitNamespaceAndName(rmt.newFullName); + return true; + } } newNamespace = null; newName = null; @@ -640,8 +643,12 @@ namespace Obfuz.ObfusPasses.SymbolObfus { if (_methodRenames.TryGetValue(method, out var record) && record.renameMappingData != null) { - newName = ((RenameMappingMethod)record.renameMappingData).newName; - return true; + RenameMappingMethod rmm = (RenameMappingMethod)record.renameMappingData; + if (rmm.status == RenameStatus.Renamed) + { + newName = ((RenameMappingMethod)record.renameMappingData).newName; + return true; + } } newName = null; return false; @@ -651,8 +658,12 @@ namespace Obfuz.ObfusPasses.SymbolObfus { if (_fieldRenames.TryGetValue(field, out var record) && record.renameMappingData != null) { - newName = ((RenameMappingField)record.renameMappingData).newName; - return true; + RenameMappingField rmm = (RenameMappingField)record.renameMappingData; + if (rmm.status == RenameStatus.Renamed) + { + newName = ((RenameMappingField)record.renameMappingData).newName; + return true; + } } newName = null; return false; @@ -662,8 +673,12 @@ namespace Obfuz.ObfusPasses.SymbolObfus { if (_propertyRenames.TryGetValue(property, out var record) && record.renameMappingData != null) { - newName = ((RenameMappingProperty)record.renameMappingData).newName; - return true; + RenameMappingProperty rmm = (RenameMappingProperty)record.renameMappingData; + if (rmm.status == RenameStatus.Renamed) + { + newName = ((RenameMappingProperty)record.renameMappingData).newName; + return true; + } } newName = null; return false; @@ -673,8 +688,12 @@ namespace Obfuz.ObfusPasses.SymbolObfus { if (_eventRenames.TryGetValue(eventDef, out var record) && record.renameMappingData != null) { - newName = ((RenameMappingEvent)record.renameMappingData).newName; - return true; + RenameMappingEvent rmm = (RenameMappingEvent)record.renameMappingData; + if (rmm.status == RenameStatus.Renamed) + { + newName = ((RenameMappingEvent)record.renameMappingData).newName; + return true; + } } newName = null; return false;