aboutsummaryrefslogtreecommitdiff
path: root/winsup/cygwin/pipe.cc
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2005-02-06 05:04:34 +0000
committerChristopher Faylor <me@cgf.cx>2005-02-06 05:04:34 +0000
commit85a798d6e755f4db4c04d92ecde1e5409a62cd59 (patch)
treef1b1eda0a4f9cdc38c11cd774e5db3e42f1de9cf /winsup/cygwin/pipe.cc
parent901b1fb9852e5ccaa66ad82c539447394727f33c (diff)
downloadnewlib-85a798d6e755f4db4c04d92ecde1e5409a62cd59.zip
newlib-85a798d6e755f4db4c04d92ecde1e5409a62cd59.tar.gz
newlib-85a798d6e755f4db4c04d92ecde1e5409a62cd59.tar.bz2
* cygthread.h (cygthread::terminate_thread): Reflect return value.
* cygthread.cc (cygthread::detach): Be more careful about ensuring that sigwait is properly waited for to avoid later missynchronization. (cygthread::terminate_thread): Return true if thread was actually terminated and all handles were closed. * fhandler_base.cc (fhandler_base::raw_read): Use signal_read_state rather than raw calls to win32 api. (fhandler_base::read): Ditto. * fhandler.h (fhandler_pipe::fixup_after_exec): Use method to create read_state signalling. (fhandler_pipe::create): Ditto. * Makefile.in: Make some more files -fomit-frame-pointer.
Diffstat (limited to 'winsup/cygwin/pipe.cc')
-rw-r--r--winsup/cygwin/pipe.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/winsup/cygwin/pipe.cc b/winsup/cygwin/pipe.cc
index 498b172..58cf010 100644
--- a/winsup/cygwin/pipe.cc
+++ b/winsup/cygwin/pipe.cc
@@ -177,7 +177,7 @@ fhandler_pipe::fixup_after_exec ()
{
if (read_state)
{
- read_state = CreateEvent (&sec_none_nih, FALSE, FALSE, NULL);
+ create_read_state (2);
ProtectHandle (read_state);
}
}
@@ -410,7 +410,7 @@ fhandler_pipe::create (fhandler_pipe *fhs[2], unsigned psize, int mode, bool fif
fhs[1]->close_on_exec (true);
}
- fhs[0]->read_state = CreateEvent (&sec_none_nih, FALSE, FALSE, NULL);
+ fhs[0]->create_read_state (2);
fhs[0]->need_fork_fixup (true);
ProtectHandle1 (fhs[0]->read_state, read_state);