From 468ea6a343d84206660e2a1f41acdb221273a9c6 Mon Sep 17 00:00:00 2001 From: walon Date: Tue, 27 May 2025 22:50:05 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20DOTSCompilerGenerated?= =?UTF-8?q?=E5=92=8CBurstCompile=E5=88=A4=E5=AE=9A=E6=B2=A1=E6=9C=89?= =?UTF-8?q?=E7=94=A8=E4=BA=8Emethod=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SymbolObfus/Policies/UnityRenamePolicy.cs | 10 +++++++--- com.code-philosophy.obfuz/Editor/Utils/MetaUtil.cs | 5 +++++ 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/com.code-philosophy.obfuz/Editor/ObfusPasses/SymbolObfus/Policies/UnityRenamePolicy.cs b/com.code-philosophy.obfuz/Editor/ObfusPasses/SymbolObfus/Policies/UnityRenamePolicy.cs index fd8c047..a99052e 100644 --- a/com.code-philosophy.obfuz/Editor/ObfusPasses/SymbolObfus/Policies/UnityRenamePolicy.cs +++ b/com.code-philosophy.obfuz/Editor/ObfusPasses/SymbolObfus/Policies/UnityRenamePolicy.cs @@ -142,7 +142,7 @@ namespace Obfuz.ObfusPasses.SymbolObfus.Policies { return true; } - if (typeDef.CustomAttributes.Find("Unity.Jobs.DOTSCompilerGeneratedAttribute") != null) + if (MetaUtil.HasDOTSCompilerGeneratedAttribute(typeDef)) { return true; } @@ -221,9 +221,9 @@ namespace Obfuz.ObfusPasses.SymbolObfus.Policies { return false; } - if (MetaUtil.HasBurstCompileAttribute(methodDef)) + if (MetaUtil.HasBurstCompileAttribute(methodDef) || MetaUtil.HasDOTSCompilerGeneratedAttribute(methodDef)) { - return true; + return false; } return true; } @@ -239,6 +239,10 @@ namespace Obfuz.ObfusPasses.SymbolObfus.Policies { return false; } + if (MetaUtil.HasBurstCompileAttribute(fieldDef) || MetaUtil.HasDOTSCompilerGeneratedAttribute(fieldDef)) + { + return false; + } return true; } } diff --git a/com.code-philosophy.obfuz/Editor/Utils/MetaUtil.cs b/com.code-philosophy.obfuz/Editor/Utils/MetaUtil.cs index 3576821..12b2f13 100644 --- a/com.code-philosophy.obfuz/Editor/Utils/MetaUtil.cs +++ b/com.code-philosophy.obfuz/Editor/Utils/MetaUtil.cs @@ -989,5 +989,10 @@ namespace Obfuz.Utils { return obj.CustomAttributes.Find("Unity.Burst.BurstCompileAttribute") != null; } + + public static bool HasDOTSCompilerGeneratedAttribute(IHasCustomAttribute obj) + { + return obj.CustomAttributes.Find("Unity.Jobs.DOTSCompilerGeneratedAttribute") != null; + } } }