From f3a73e6582c841957a80da8808630fbbadc6426f Mon Sep 17 00:00:00 2001
From: Barabanov Anton <a.barabanov@corp.mail.ru>
Date: Wed, 21 Jan 2015 17:39:12 +0300
Subject: [PATCH] fix libcoro to be thread-safe

---
 third_party/coro/coro.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/third_party/coro/coro.c b/third_party/coro/coro.c
index ff71383b84..a980561ce9 100644
--- a/third_party/coro/coro.c
+++ b/third_party/coro/coro.c
@@ -77,9 +77,9 @@
 #  include <unistd.h>
 # endif
 
-static coro_func coro_init_func;
-static void *coro_init_arg;
-static coro_context *new_coro, *create_coro;
+static __thread coro_func coro_init_func;
+static __thread void *coro_init_arg;
+static __thread coro_context *new_coro, *create_coro;
 
 static void
 coro_init (void)
@@ -101,7 +101,7 @@ coro_init (void)
 
 # if CORO_SJLJ
 
-static volatile int trampoline_done;
+static __thread volatile int trampoline_done;
 
 /* trampoline signal handler */
 static void
-- 
GitLab