From c8755779397f7cc6342d08402ffc4c0c0e1b5265 Mon Sep 17 00:00:00 2001 From: walon Date: Mon, 5 May 2025 10:14:42 +0800 Subject: [PATCH] =?UTF-8?q?SymbolObfus=20Debug=E6=A8=A1=E5=BC=8F=E6=97=B6?= =?UTF-8?q?=E6=89=80=E6=9C=89=E5=91=BD=E5=90=8D=E5=89=8D=E5=8A=A0$?= =?UTF-8?q?=E3=80=82=E5=8F=AA=E8=A6=81=E4=B8=8D=E9=87=8D=E5=90=8D=EF=BC=8C?= =?UTF-8?q?=E4=B8=8D=E5=86=8D=E8=BF=BD=E5=8A=A0index=E5=90=8E=E7=BC=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Editor/ObfusPasses/SymbolObfus/DebugNameMaker.cs | 16 +++++++++------- Editor/ObfusPasses/SymbolObfus/NameScope.cs | 2 +- Editor/ObfusPasses/SymbolObfus/NameScopeBase.cs | 6 ++++-- 3 files changed, 14 insertions(+), 10 deletions(-) diff --git a/Editor/ObfusPasses/SymbolObfus/DebugNameMaker.cs b/Editor/ObfusPasses/SymbolObfus/DebugNameMaker.cs index acacf83..90483d7 100644 --- a/Editor/ObfusPasses/SymbolObfus/DebugNameMaker.cs +++ b/Editor/ObfusPasses/SymbolObfus/DebugNameMaker.cs @@ -8,9 +8,16 @@ namespace Obfuz.ObfusPasses.SymbolObfus private class TestNameScope : NameScopeBase { private int _nextIndex; - protected override void BuildNewName(StringBuilder nameBuilder, string originalName) + protected override void BuildNewName(StringBuilder nameBuilder, string originalName, string lastName) { - nameBuilder.Append($"<{originalName}>{_nextIndex++}"); + if (string.IsNullOrEmpty(lastName)) + { + nameBuilder.Append($"${originalName}"); + } + else + { + nameBuilder.Append($"${originalName}{_nextIndex++}"); + } } } @@ -18,10 +25,5 @@ namespace Obfuz.ObfusPasses.SymbolObfus { return new TestNameScope(); } - - public override string GetNewName(ParamDef param, string originalName) - { - return $"${originalName}"; - } } } diff --git a/Editor/ObfusPasses/SymbolObfus/NameScope.cs b/Editor/ObfusPasses/SymbolObfus/NameScope.cs index e56d9cc..7fedd40 100644 --- a/Editor/ObfusPasses/SymbolObfus/NameScope.cs +++ b/Editor/ObfusPasses/SymbolObfus/NameScope.cs @@ -16,7 +16,7 @@ namespace Obfuz.ObfusPasses.SymbolObfus _nextIndex = 0; } - protected override void BuildNewName(StringBuilder nameBuilder, string originalName) + protected override void BuildNewName(StringBuilder nameBuilder, string originalName, string lastName) { for (int i = _nextIndex++; ;) { diff --git a/Editor/ObfusPasses/SymbolObfus/NameScopeBase.cs b/Editor/ObfusPasses/SymbolObfus/NameScopeBase.cs index 2d5f0b9..7bb0774 100644 --- a/Editor/ObfusPasses/SymbolObfus/NameScopeBase.cs +++ b/Editor/ObfusPasses/SymbolObfus/NameScopeBase.cs @@ -20,16 +20,18 @@ namespace Obfuz.ObfusPasses.SymbolObfus } - protected abstract void BuildNewName(StringBuilder nameBuilder, string originalName); + protected abstract void BuildNewName(StringBuilder nameBuilder, string originalName, string lastName); private string CreateNewName(string originalName) { var nameBuilder = new StringBuilder(); + string lastName = null; while (true) { nameBuilder.Clear(); - BuildNewName(nameBuilder, originalName); + BuildNewName(nameBuilder, originalName, lastName); string newName = nameBuilder.ToString(); + lastName = newName; if (_preservedNames.Add(newName)) { return newName;