From 3ebbf5a05ea835c7cd1df07046109e2ce24cbd75 Mon Sep 17 00:00:00 2001
From: Jo Shields <jo.shields@xamarin.com>
Date: Thu, 24 Sep 2015 12:08:17 +0100
Subject: [PATCH] Cherry-pick 2437b1ea77fc4252f3fdf17e847333ca2a152d0d to fix
 monodis crash

---
 ...ntlty-zero-is-a-valid-tls-key-on-som.patch | 35 +++++++++++++++++++
 mono-core.spec                                |  2 ++
 2 files changed, 37 insertions(+)
 create mode 100644 0001-threading-Apparentlty-zero-is-a-valid-tls-key-on-som.patch

diff --git a/0001-threading-Apparentlty-zero-is-a-valid-tls-key-on-som.patch b/0001-threading-Apparentlty-zero-is-a-valid-tls-key-on-som.patch
new file mode 100644
index 0000000000..cd6b1373a1
--- /dev/null
+++ b/0001-threading-Apparentlty-zero-is-a-valid-tls-key-on-som.patch
@@ -0,0 +1,35 @@
+From 2437b1ea77fc4252f3fdf17e847333ca2a152d0d Mon Sep 17 00:00:00 2001
+From: Rodrigo Kumpera <kumpera@gmail.com>
+Date: Fri, 18 Sep 2015 16:51:12 -0400
+Subject: [PATCH] [threading] Apparentlty zero is a valid tls key on some
+ systems.
+
+---
+ mono/utils/mono-threads.c | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/mono/utils/mono-threads.c b/mono/utils/mono-threads.c
+index e84e409..c0bfbec 100644
+--- a/mono/utils/mono-threads.c
++++ b/mono/utils/mono-threads.c
+@@ -417,7 +417,7 @@ mono_threads_unregister_current_thread (MonoThreadInfo *info)
+ MonoThreadInfo*
+ mono_thread_info_current_unchecked (void)
+ {
+-	return thread_info_key ? (MonoThreadInfo*)mono_native_tls_get_value (thread_info_key) : NULL;
++	return mono_threads_inited ? (MonoThreadInfo*)mono_native_tls_get_value (thread_info_key) : NULL;
+ }
+ 
+ 
+@@ -574,8 +574,6 @@ mono_threads_init (MonoThreadInfoCallbacks *callbacks, size_t info_size)
+ 	res = mono_native_tls_alloc (&thread_exited_key, (void *) thread_exited_dtor);
+ #endif
+ 
+-	g_assert (thread_info_key);
+-
+ 	g_assert (res);
+ 
+ #ifndef HAVE_KW_THREAD
+-- 
+1.9.1
+
diff --git a/mono-core.spec b/mono-core.spec
index 03e99e5ba8..d70a3e0052 100644
--- a/mono-core.spec
+++ b/mono-core.spec
@@ -37,6 +37,7 @@ Group:          Development/Languages/Mono
 Url:            http://www.mono-project.com
 Source0:        http://download.mono-project.com/sources/mono/mono-%{version}.tar.bz2
 Patch1:		0001-Un-revoke-fix-in-BNC-144655-mono-find-provides-shoul.patch
+Patch2:		0001-threading-Apparentlty-zero-is-a-valid-tls-key-on-som.patch
 BuildRequires:  autoconf
 BuildRequires:  automake
 BuildRequires:  bison
@@ -123,6 +124,7 @@ technologies that have been submitted to the ECMA for standardization.
 %prep
 %setup -q -n mono-%{__majorver}
 %patch1 -p1
+%patch2 -p1
 
 %build
 ./autogen.sh