From 8979f2786c003506d7c2c278906bea89759b5d58 Mon Sep 17 00:00:00 2001 From: Zoltan Varga Date: Mon, 21 Nov 2016 17:28:34 -0500 Subject: [PATCH] [runtime] Add back locking around mono_class_layout_fields () to work around https://bugzilla.xamarin.com/show_bug.cgi?id=47156. --- mono/metadata/class.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mono/metadata/class.c b/mono/metadata/class.c index 8aba20911a9..61bbfe70f4b 100644 --- a/mono/metadata/class.c +++ b/mono/metadata/class.c @@ -1639,8 +1639,11 @@ mono_class_setup_fields (MonoClass *klass) /* The def_value of fields is compute lazily during vtable creation */ } - if (!mono_class_has_failure (klass)) + if (!mono_class_has_failure (klass)) { + mono_loader_lock (); mono_class_layout_fields (klass, instance_size, packing_size, FALSE); + mono_loader_unlock (); + } init_list = g_slist_remove (init_list, klass); mono_native_tls_set_value (setup_fields_tls_id, init_list); -- 2.25.1