summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/thread.cc
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2003-09-13 01:21:32 +0000
committerChristopher Faylor <me@cgf.cx>2003-09-13 01:21:32 +0000
commitb0309a1658ccbda1a9a39e3cae19026e247b83cc (patch)
treea90c5bcd3dab957e24ce9d4b0ee76b328635e6ab /winsup/cygwin/thread.cc
parent21d7ec1928ebe7dde587f047d50b03a894e0fa6b (diff)
downloadcygnal-b0309a1658ccbda1a9a39e3cae19026e247b83cc.tar.gz
cygnal-b0309a1658ccbda1a9a39e3cae19026e247b83cc.tar.bz2
cygnal-b0309a1658ccbda1a9a39e3cae19026e247b83cc.zip
* thread.cc (MTinterface::fixup_after_fork): Remove code which potentially
overwrote _impure pointer with contents of thread which invoked fork since this eliminates important information like the pointer to the atexit queue.
Diffstat (limited to 'winsup/cygwin/thread.cc')
-rw-r--r--winsup/cygwin/thread.cc4
1 files changed, 0 insertions, 4 deletions
diff --git a/winsup/cygwin/thread.cc b/winsup/cygwin/thread.cc
index 516cb8d2b..2304b7b42 100644
--- a/winsup/cygwin/thread.cc
+++ b/winsup/cygwin/thread.cc
@@ -224,10 +224,6 @@ MTinterface::fixup_after_fork (void)
/* As long as the signal handling not multithreaded
switch reents storage back to _impure_ptr for the mainthread
to support fork from threads other than the mainthread */
- struct _reent *reent_old = __getreent ();
-
- if (reent_old && _impure_ptr != reent_old)
- *_impure_ptr = *reent_old;
reents._clib = _impure_ptr;
reents._winsup = &winsup_reent;
winsup_reent._process_logmask = LOG_UPTO (LOG_DEBUG);