Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2002-09-29 06:19:35 +0400
committerChristopher Faylor <me@cgf.cx>2002-09-29 06:19:35 +0400
commitaea1f301fcc9037a222ccf7c2f0f247cdeb2d06e (patch)
tree89921a181cefa4fd5316a2c23ea9624f77b70928 /winsup/cygwin/cygthread.h
parentfc5dae1ccab502bdb35a7581a4db8a95cf311c8a (diff)
* cygthread.h (cygthread::terminate): Declare new function.
(cygthread::initialized): Change to 'int'. * cygthread.cc (cygthread::stub): Exit thread if initialized < 0. (cygthread::new): Ditto. (cygthread::runner): Ditto. Set initialized using xor to preserve sign. (cygthread::terminate): New function. * dcrt0.cc (do_exit): Call cygthread::terminate.
Diffstat (limited to 'winsup/cygwin/cygthread.h')
-rw-r--r--winsup/cygwin/cygthread.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/winsup/cygwin/cygthread.h b/winsup/cygwin/cygthread.h
index 37f7c6537..b55aec90c 100644
--- a/winsup/cygwin/cygthread.h
+++ b/winsup/cygwin/cygthread.h
@@ -17,7 +17,7 @@ class cygthread
VOID *arg;
bool is_freerange;
static DWORD main_thread_id;
- static bool initialized;
+ static int initialized;
static DWORD WINAPI runner (VOID *);
static DWORD WINAPI free_runner (VOID *);
static DWORD WINAPI stub (VOID *);
@@ -33,6 +33,7 @@ class cygthread
void * operator new (size_t);
static void * freerange ();
void exit_thread ();
+ static void terminate ();
};
#define cygself NULL