From 4bfb6c4b8b7958d3d8786d083c87e0a16739cffe Mon Sep 17 00:00:00 2001 From: Joram Date: Mon, 18 Jun 2018 20:52:58 +0200 Subject: [PATCH] optimized dll caching --- Scripts/NodeDataCache.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Scripts/NodeDataCache.cs b/Scripts/NodeDataCache.cs index 8d6bbe7..b194230 100644 --- a/Scripts/NodeDataCache.cs +++ b/Scripts/NodeDataCache.cs @@ -53,8 +53,12 @@ namespace XNode { // If xNode is not used as a DLL, check only CSharp (fast) nodeTypes.AddRange(selfAssembly.GetTypes().Where(t => !t.IsAbstract && baseType.IsAssignableFrom(t))); } else { - // Else, check all DDLs (slow) + // Else, check all relevant DDLs (slower) + // ignore all unity related assemblies foreach (Assembly assembly in assemblies) { + if (assembly.FullName.StartsWith("Unity")) continue; + // unity created assemblies always have version 0.0.0 + if (!assembly.FullName.Contains("Version=0.0.0")) continue; nodeTypes.AddRange(assembly.GetTypes().Where(t => !t.IsAbstract && baseType.IsAssignableFrom(t)).ToArray()); } }