From 7d0b83b1861cf310326ac76aa0a9b4c4c39e1f55 Mon Sep 17 00:00:00 2001 From: Daniel Santana Date: Tue, 22 Dec 2015 16:02:32 +0000 Subject: [PATCH 1/2] Fix for 3dsMax Python Importing clr in 3dsMax python, causes the application to crash on GetTypes from certain assemblies. --- src/runtime/assemblymanager.cs | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/src/runtime/assemblymanager.cs b/src/runtime/assemblymanager.cs index 29add80be..ad6c8363c 100644 --- a/src/runtime/assemblymanager.cs +++ b/src/runtime/assemblymanager.cs @@ -12,6 +12,7 @@ using System.Collections; using System.Collections.Specialized; using System.Collections.Generic; +using System.Diagnostics; using System.Reflection; using System.Reflection.Emit; @@ -57,10 +58,17 @@ internal static void Initialize() { domain.AssemblyResolve += rhandler; Assembly[] items = domain.GetAssemblies(); - for (int i = 0; i < items.Length; i++) { - Assembly a = items[i]; - assemblies.Add(a); - ScanAssembly(a); + foreach (var a in items) + { + try + { + ScanAssembly(a); + assemblies.Add(a); + } + catch (Exception ex) + { + Debug.WriteLine($"Error scaning assembly {a}. {ex}"); + } } } @@ -316,9 +324,7 @@ internal static void ScanAssembly(Assembly assembly) { for (int n = 0; n < names.Length; n++) { s = (n == 0) ? names[0] : s + "." + names[n]; if (!namespaces.ContainsKey(s)) { - namespaces.Add(s, - new Dictionary() - ); + namespaces.Add(s, new Dictionary()); } } } From 2dc2622467c47d7f58f55a0c1201554f5163bd8d Mon Sep 17 00:00:00 2001 From: Daniel Santana Date: Thu, 7 Jan 2016 17:28:48 +0000 Subject: [PATCH 2/2] Removed dependency on C#6 --- src/runtime/assemblymanager.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/runtime/assemblymanager.cs b/src/runtime/assemblymanager.cs index ad6c8363c..a217e84e2 100644 --- a/src/runtime/assemblymanager.cs +++ b/src/runtime/assemblymanager.cs @@ -67,7 +67,7 @@ internal static void Initialize() { } catch (Exception ex) { - Debug.WriteLine($"Error scaning assembly {a}. {ex}"); + Debug.WriteLine(string.Format("Error scanning assembly {0}. {1}", a, ex)); } } } pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy