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
path: root/winsup
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2003-09-13 05:21:32 +0400
committerChristopher Faylor <me@cgf.cx>2003-09-13 05:21:32 +0400
commitb0309a1658ccbda1a9a39e3cae19026e247b83cc (patch)
treea90c5bcd3dab957e24ce9d4b0ee76b328635e6ab /winsup
parent21d7ec1928ebe7dde587f047d50b03a894e0fa6b (diff)
* 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')
-rw-r--r--winsup/cygwin/ChangeLog7
-rw-r--r--winsup/cygwin/thread.cc4
2 files changed, 7 insertions, 4 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 055f6fcf7..e9f6ac952 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,12 @@
2003-09-12 Christopher Faylor <cgf@redhat.com>
+ * 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.
+
+2003-09-12 Christopher Faylor <cgf@redhat.com>
+
* fhandler_disk_file.cc (path_conv::ndisk_links): Fix problem where
search characters overwrote the path instead of being tacked on the
end.
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);