summaryrefslogtreecommitdiff
path: root/ACE/ace/Acceptor.cpp
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>2009-03-22 15:07:27 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>2009-03-22 15:07:27 +0000
commitf5ca1ac19a529245ba67e45bd0f31687ac14e3d7 (patch)
tree94b7ab51899056934a700f7f71a6501e2e21429d /ACE/ace/Acceptor.cpp
parent9321becdf30b6c09451b3e889a4ecc04a7f2f67a (diff)
downloadATCD-f5ca1ac19a529245ba67e45bd0f31687ac14e3d7.tar.gz
ChangeLogTag:Fri
Diffstat (limited to 'ACE/ace/Acceptor.cpp')
-rw-r--r--ACE/ace/Acceptor.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/ACE/ace/Acceptor.cpp b/ACE/ace/Acceptor.cpp
index 1b708cbe7cd..b4e7784a4a1 100644
--- a/ACE/ace/Acceptor.cpp
+++ b/ACE/ace/Acceptor.cpp
@@ -287,7 +287,18 @@ ACE_Acceptor<SVC_HANDLER, ACE_PEER_ACCEPTOR_2>::accept_svc_handler
// created handle. This is because the newly created handle will
// inherit the properties of the listen handle, including its event
// associations.
- bool const reset_new_handle = this->reactor ()->uses_event_associations ();
+
+ ACE_Reactor *reactor = this->reactor ();
+ bool const reset_new_handle;
+
+ if (reactor)
+ reset_new_handle = reactor->uses_event_associations ();
+ else
+ {
+ // Acceptor is closed, so reject this call
+ errno = EINVAL;
+ return -1;
+ }
if (this->acceptor ().accept (svc_handler->peer (), // stream
0, // remote address