From 24bffff63eb798d721b75b1c38c18f1687d33a2a Mon Sep 17 00:00:00 2001
From: Corinna Vinschen <corinna@vinschen.de>
Date: Mon, 22 Nov 2021 12:33:47 +0100
Subject: [PATCH] Cygwin: raise: fix check for multithreaded process

The check for the pthread self pointer in TLS is misleading,
given the main thread has this pointer initialized as well.
Check for the global __isthreaded flag as well.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
---
 winsup/cygwin/signal.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/winsup/cygwin/signal.cc b/winsup/cygwin/signal.cc
index bd1168e90..f4b468664 100644
--- a/winsup/cygwin/signal.cc
+++ b/winsup/cygwin/signal.cc
@@ -301,7 +301,7 @@ extern "C" int
 raise (int sig)
 {
   pthread *thread = _my_tls.tid;
-  if (!thread)
+  if (!thread || !__isthreaded)
     return kill (myself->pid, sig);
   return pthread_kill (thread, sig);
 }