diff options
author | schmidt <douglascraigschmidt@users.noreply.github.com> | 2005-06-16 18:17:48 +0000 |
---|---|---|
committer | schmidt <douglascraigschmidt@users.noreply.github.com> | 2005-06-16 18:17:48 +0000 |
commit | c485620da2b7d7de3296a01ea1e661e0b34dbc47 (patch) | |
tree | f974cb3e84bda9d074af0ca8cf5f07c908a11084 | |
parent | 3325541f03f1f54a202890dfcfe7d4be531c0455 (diff) | |
download | ATCD-c485620da2b7d7de3296a01ea1e661e0b34dbc47.tar.gz |
ChangeLogTag:Thu Jun 16 07:38:57 2005 Douglas C. Schmidt <schmidt@cs.wustl.edu>
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | THANKS | 3 | ||||
-rw-r--r-- | ace/Pipe.h | 10 | ||||
-rw-r--r-- | ace/Process.cpp | 3 | ||||
-rw-r--r-- | ace/SOCK_Stream.cpp | 4 |
5 files changed, 26 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog index ad6b85e6f13..c765abbafb0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,17 @@ Thu Jun 16 07:38:57 2005 Douglas C. Schmidt <schmidt@cs.wustl.edu> + * ace/Process.cpp (running): Only try to "kill" a process if + the PID is valid. Thanks to Howard Finer <hfiner at sonusnet + dot com> for contributing this. + + * ace/SOCK_Stream.cpp (close): Added a call to ACE_OS::shutdown() + to force exit from ongoing operations. Thanks to Howard Finer + <hfiner at sonusnet dot com> for contributing this. + + * ace/Pipe.h (ACE_Pipe): Updated the documentation for this class + to clarify why it uses sockets on Windows. Thanks to Dave + Varnell <Dave.Varvell@ni.com> for prompting this. + * ace/INET_Addr.cpp (set): Changed the test of if (port_number < 0) @@ -1988,7 +1988,8 @@ Alan Balasuar <balasuar at gmail dot com> Will Chai <willchai at 126 dot com> Paul Koch <paul dot koch at mci dot com> Dave Giovannini <giovanninid at ociweb dot com> - +Dave Varnell <Dave dot Varvell at ni dot com> +Howard Finer <hfiner at sonusnet dot com> I would particularly like to thank Paul Stephenson, who worked with me at Ericsson in the early 1990's. Paul devised the recursive Makefile diff --git a/ace/Pipe.h b/ace/Pipe.h index 4426126f865..e6a0d153079 100644 --- a/ace/Pipe.h +++ b/ace/Pipe.h @@ -6,7 +6,7 @@ * * $Id$ * - * @author Doug Schmidt + * @author Douglas C. Schmidt <schmidt@cs.wustl.edu> */ //========================================================================== @@ -27,11 +27,11 @@ /** * @class ACE_Pipe * - * @brief Provides a bidirectional "pipe" abstraction that is portable - * to Windows NT, SVR4 UNIX, and BSD UNIX. + * @brief Provides a portable bidirectional "pipe" abstraction. * - * Uses "name" for lookup in the ACE service repository. Obtains - * the object and returns it as the appropriate type. + * This class is designed to work with select()-based demuxers, such + * as the ACE_Select_Reactor, which is why it uses sockets on Windows + * rather than Win32 pipes (which aren't select()'able). */ class ACE_Export ACE_Pipe { diff --git a/ace/Process.cpp b/ace/Process.cpp index c32ba2f6c47..5e3adf731fb 100644 --- a/ace/Process.cpp +++ b/ace/Process.cpp @@ -442,6 +442,9 @@ ACE_Process::running (void) const &code); return result && code == STILL_ACTIVE; #else + if (ACE_INVALID_PID == this->getpid ()) + return 0; + else return ACE_OS::kill (this->getpid (), 0) == 0 || errno != ESRCH; diff --git a/ace/SOCK_Stream.cpp b/ace/SOCK_Stream.cpp index eda799e0ee6..77feed6c819 100644 --- a/ace/SOCK_Stream.cpp +++ b/ace/SOCK_Stream.cpp @@ -31,6 +31,10 @@ ACE_SOCK_Stream::close (void) // fork() works. this->close_writer (); #endif /* ACE_WIN32 */ + + // Shutdown the socket to force exit from ongoing operations + ACE_OS::shutdown (this->get_handle (), SHUT_RDWR); + // Close down the socket. return ACE_SOCK::close (); } |