From 218879a2f2d3f39953a50f498604833450844478 Mon Sep 17 00:00:00 2001 From: Ivan Kochurkin Date: Sun, 25 Jul 2021 16:13:54 +0300 Subject: [PATCH] Fix failed renaming due to blocking references, fix #379 --- Confuser.Renamer/RenamePhase.cs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Confuser.Renamer/RenamePhase.cs b/Confuser.Renamer/RenamePhase.cs index 588e632c0..ffa0defed 100644 --- a/Confuser.Renamer/RenamePhase.cs +++ b/Confuser.Renamer/RenamePhase.cs @@ -2,6 +2,7 @@ using System.Linq; using System.Text; using Confuser.Core; +using Confuser.Renamer.References; using dnlib.DotNet; using dnlib.DotNet.Pdb; @@ -132,6 +133,12 @@ static IEnumerable GetTargetsWithDelay(IList definitions, errorBuilder.AppendLine("Remaining definitions: "); foreach (var def in delayedItems) { errorBuilder.Append("• ").AppendDescription(def, service).AppendLine(); + service.SetCanRename(def, false); + foreach (var reference in service.GetReferences(def)) { + if (reference is MemberOverrideReference memberOverrideReference) { + service.SetCanRename(memberOverrideReference.BaseMemberDef, false); + } + } } context.Logger.Warn(errorBuilder.ToString().Trim()); yield break;