diff options
author | schmidt <douglascraigschmidt@users.noreply.github.com> | 1997-04-10 03:35:52 +0000 |
---|---|---|
committer | schmidt <douglascraigschmidt@users.noreply.github.com> | 1997-04-10 03:35:52 +0000 |
commit | f1f055e82613b295c3ae8ee87ffb2304d49244c3 (patch) | |
tree | 06d1532c9b151f46e93db121adb693a2d2b409f5 | |
parent | 56c93e046d5fa5ed00fb0d2e051eadfb4ae2524e (diff) | |
download | ATCD-f1f055e82613b295c3ae8ee87ffb2304d49244c3.tar.gz |
*** empty log message ***
-rw-r--r-- | ChangeLog-97a | 4 | ||||
-rw-r--r-- | apps/Gateway/Gateway/Gateway.cpp | 8 |
2 files changed, 8 insertions, 4 deletions
diff --git a/ChangeLog-97a b/ChangeLog-97a index f8e6b91a351..22a0b1bb646 100644 --- a/ChangeLog-97a +++ b/ChangeLog-97a @@ -1,5 +1,9 @@ Wed Apr 9 21:11:38 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + * apps/Gateway/Gateway/Gateway.cpp (handle_signal): Evil demons + added bugs to my code that were causing segfaults when signals + shutdown the gateway. This is now fixed. + * apps/Gateway/Gateway/Proxy_Handler.h: Changed ACE_Event_Channel & to ACE_Event_Channel * to keep the compiler happy. diff --git a/apps/Gateway/Gateway/Gateway.cpp b/apps/Gateway/Gateway/Gateway.cpp index 8d403707bdb..872366eee93 100644 --- a/apps/Gateway/Gateway/Gateway.cpp +++ b/apps/Gateway/Gateway/Gateway.cpp @@ -68,6 +68,10 @@ Gateway::handle_signal (int signum, siginfo_t *, ucontext_t *) if (signum > 0) ACE_DEBUG ((LM_DEBUG, "(%t) %S\n", signum)); + if (ACE_Service_Config::reactor ()->remove_handler + (ACE_STDIN, ACE_Event_Handler::READ_MASK | ACE_Event_Handler::DONT_CALL) == -1) + ACE_ERROR_RETURN ((LM_ERROR, "(%t) %p\n", "remove_handler"), -1); + // Shut down the main event loop. ACE_Service_Config::end_reactor_event_loop (); return 0; @@ -76,10 +80,6 @@ Gateway::handle_signal (int signum, siginfo_t *, ucontext_t *) int Gateway::handle_input (ACE_HANDLE h) { - if (ACE_Service_Config::reactor ()->remove_handler - (ACE_STDIN, ACE_Event_Handler::READ_MASK | ACE_Event_Handler::DONT_CALL) == -1) - ACE_ERROR_RETURN ((LM_ERROR, "(%t) %p\n", "remove_handler"), -1); - char buf[BUFSIZ]; // Consume the input... ACE_OS::read (h, buf, sizeof (buf)); |