diff --git a/Editor/ObfusPasses/SymbolObfus/ReflectionCompatibilityDetector.cs b/Editor/ObfusPasses/SymbolObfus/ReflectionCompatibilityDetector.cs index a5bb68b..b78b0c6 100644 --- a/Editor/ObfusPasses/SymbolObfus/ReflectionCompatibilityDetector.cs +++ b/Editor/ObfusPasses/SymbolObfus/ReflectionCompatibilityDetector.cs @@ -11,11 +11,13 @@ namespace Obfuz.ObfusPasses.SymbolObfus { public class ReflectionCompatibilityDetector { + private readonly HashSet _assembliesToObfuscate; private readonly List _obfuscatedAndNotObfuscatedModules; private readonly IObfuscationPolicy _renamePolicy; - public ReflectionCompatibilityDetector(List obfuscatedAndNotObfuscatedModules, IObfuscationPolicy renamePolicy) + public ReflectionCompatibilityDetector(List assembliesToObfuscate, List obfuscatedAndNotObfuscatedModules, IObfuscationPolicy renamePolicy) { + _assembliesToObfuscate = new HashSet(assembliesToObfuscate); _obfuscatedAndNotObfuscatedModules = obfuscatedAndNotObfuscatedModules; _renamePolicy = renamePolicy; } @@ -137,7 +139,7 @@ namespace Obfuz.ObfusPasses.SymbolObfus private bool IsAnyEnumItemRenamed(TypeDef typeDef) { - return typeDef.Fields.Any(f => _renamePolicy.NeedRename(f)); + return _assembliesToObfuscate.Contains(typeDef.Module) && typeDef.Fields.Any(f => _renamePolicy.NeedRename(f)); } private void AnalyzeCallvir(IMethod calledMethod, ITypeDefOrRef constrainedType) diff --git a/Editor/ObfusPasses/SymbolObfus/SymbolRename.cs b/Editor/ObfusPasses/SymbolObfus/SymbolRename.cs index 3a978b9..a62de35 100644 --- a/Editor/ObfusPasses/SymbolObfus/SymbolRename.cs +++ b/Editor/ObfusPasses/SymbolObfus/SymbolRename.cs @@ -182,7 +182,7 @@ namespace Obfuz.ObfusPasses.SymbolObfus PrecomputeNeedRename(); if (_detectReflectionCompatibility) { - var reflectionCompatibilityDetector = new ReflectionCompatibilityDetector(_obfuscatedAndNotObfuscatedModules, _renamePolicy); + var reflectionCompatibilityDetector = new ReflectionCompatibilityDetector(_toObfuscatedModules, _obfuscatedAndNotObfuscatedModules, _renamePolicy); reflectionCompatibilityDetector.Analyze(); } RenameTypes();