* globals.cc (__isthreaded): New global variable. Explain what it's
used for. * miscfuncs.cc (thread_wrapper): Set __isthreaded to 1 here.
This commit is contained in:
parent
cc4a1b830d
commit
3e8d2576fd
|
@ -1,3 +1,9 @@
|
||||||
|
2013-05-21 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
|
* globals.cc (__isthreaded): New global variable. Explain what it's
|
||||||
|
used for.
|
||||||
|
* miscfuncs.cc (thread_wrapper): Set __isthreaded to 1 here.
|
||||||
|
|
||||||
2013-05-21 Corinna Vinschen <corinna@vinschen.de>
|
2013-05-21 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
* fhandler.h (class fhandler_dev_random): Change type of pseudo to
|
* fhandler.h (class fhandler_dev_random): Change type of pseudo to
|
||||||
|
|
|
@ -75,6 +75,13 @@ bool detect_bloda = false;
|
||||||
|
|
||||||
bool NO_COPY in_forkee;
|
bool NO_COPY in_forkee;
|
||||||
|
|
||||||
|
/* Taken from BSD libc:
|
||||||
|
This variable is zero until a process has created a pthread. It is used
|
||||||
|
to avoid calling locking functions in libc when they are not required.
|
||||||
|
Note that this is moderately dangerous. Do not rely on it if the public
|
||||||
|
API is also used from a non-pthread thread like the signal thread. */
|
||||||
|
int NO_COPY __isthreaded = 0;
|
||||||
|
|
||||||
int __argc_safe;
|
int __argc_safe;
|
||||||
int __argc;
|
int __argc;
|
||||||
char **__argv;
|
char **__argv;
|
||||||
|
|
|
@ -473,6 +473,9 @@ thread_wrapper (PVOID arg)
|
||||||
if (!arg)
|
if (!arg)
|
||||||
return ERROR_INVALID_PARAMETER;
|
return ERROR_INVALID_PARAMETER;
|
||||||
|
|
||||||
|
/* The process is now threaded. Note the fact for later usage. */
|
||||||
|
__isthreaded = 1;
|
||||||
|
|
||||||
/* Fetch thread wrapper info and free from cygheap. */
|
/* Fetch thread wrapper info and free from cygheap. */
|
||||||
thread_wrapper_arg wrapper_arg = *(thread_wrapper_arg *) arg;
|
thread_wrapper_arg wrapper_arg = *(thread_wrapper_arg *) arg;
|
||||||
cfree (arg);
|
cfree (arg);
|
||||||
|
|
Loading…
Reference in New Issue