From f1a225cd818a3fd0d4ff3a1b6dd88cfb244735d3 Mon Sep 17 00:00:00 2001 From: walon Date: Fri, 23 May 2025 22:11:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20RenameRecordMap::InitAndAd?= =?UTF-8?q?dRename=E5=88=9D=E5=A7=8B=E5=8C=96signature=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Editor/ObfusPasses/SymbolObfus/RenameRecordMap.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/com.code-philosophy.obfuz/Editor/ObfusPasses/SymbolObfus/RenameRecordMap.cs b/com.code-philosophy.obfuz/Editor/ObfusPasses/SymbolObfus/RenameRecordMap.cs index 4a69c90..6825fb2 100644 --- a/com.code-philosophy.obfuz/Editor/ObfusPasses/SymbolObfus/RenameRecordMap.cs +++ b/com.code-philosophy.obfuz/Editor/ObfusPasses/SymbolObfus/RenameRecordMap.cs @@ -585,12 +585,13 @@ namespace Obfuz.ObfusPasses.SymbolObfus public void InitAndAddRename(VirtualMethodGroup methodGroup, string newName) { - RenameRecord methodRecord = _methodRenames[methodGroup.methods[0]]; + RenameRecord methodRecord = methodGroup.methods.Where(m => _methodRenames.ContainsKey(m)).Select(m => _methodRenames[m]).FirstOrDefault(); + MethodDef firstMethod = methodGroup.methods[0]; _virtualMethodGroups.Add(methodGroup, new RenameRecord { status = RenameStatus.Renamed, - signature = methodRecord.signature, - oldName = methodRecord.oldName, + signature = methodRecord != null ? methodRecord.signature : TypeSigUtil.ComputeMethodDefSignature(firstMethod), + oldName = methodRecord != null ? methodRecord.oldName : firstMethod.Name, newName = newName, }); }