From 9e677181ddef83feca7857e8f107ea3fff56390d Mon Sep 17 00:00:00 2001 From: Steven Kirk Date: Tue, 10 Nov 2015 00:08:44 +0100 Subject: [PATCH] Make sure static ctor is run when looking up PPs. --- .../Converters/PerspexPropertyTypeConverter.cs | 4 ---- src/Perspex.Base/PerspexPropertyRegistry.cs | 4 ++++ 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Markup/Perspex.Markup.Xaml/Converters/PerspexPropertyTypeConverter.cs b/src/Markup/Perspex.Markup.Xaml/Converters/PerspexPropertyTypeConverter.cs index a97700c6b8..b46364d4c4 100644 --- a/src/Markup/Perspex.Markup.Xaml/Converters/PerspexPropertyTypeConverter.cs +++ b/src/Markup/Perspex.Markup.Xaml/Converters/PerspexPropertyTypeConverter.cs @@ -4,7 +4,6 @@ using System; using System.Globalization; using System.Linq; -using System.Runtime.CompilerServices; using OmniXaml; using OmniXaml.TypeConversion; using Perspex.Styling; @@ -55,9 +54,6 @@ namespace Perspex.Markup.Xaml.Converters } } - // Ensure the type's static ctor has been run. - RuntimeHelpers.RunClassConstructor(type.TypeHandle); - // First look for non-attached property on the type and then look for an attached property. var property = PerspexPropertyRegistry.Instance.FindRegistered(type, s); diff --git a/src/Perspex.Base/PerspexPropertyRegistry.cs b/src/Perspex.Base/PerspexPropertyRegistry.cs index 85f9e275b1..9e24fd7a2f 100644 --- a/src/Perspex.Base/PerspexPropertyRegistry.cs +++ b/src/Perspex.Base/PerspexPropertyRegistry.cs @@ -5,6 +5,7 @@ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; +using System.Runtime.CompilerServices; namespace Perspex { @@ -61,6 +62,9 @@ namespace Perspex while (type != null) { + // Ensure the type's static ctor has been run. + RuntimeHelpers.RunClassConstructor(type.TypeHandle); + List list; if (_registered.TryGetValue(type, out list))