diff options
author | irfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-05-26 03:12:13 +0000 |
---|---|---|
committer | irfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-05-26 03:12:13 +0000 |
commit | 1cc24b534778ecf0e8621f5c830bb0b9f5e3fc3a (patch) | |
tree | f7440af82b58673676753531675128f5ab46aac8 | |
parent | 5dd94d7d91e71ac070a0607ac2e4f336b9288035 (diff) | |
download | ATCD-1cc24b534778ecf0e8621f5c830bb0b9f5e3fc3a.tar.gz |
ChangeLogTag: Thu May 25 22:00:04 2000 Irfan Pyarali <irfan@cs.wustl.edu>
-rw-r--r-- | TAO/ChangeLogs/ChangeLog-02a | 22 | ||||
-rw-r--r-- | TAO/tao/IIOP_Connect.cpp | 8 | ||||
-rw-r--r-- | TAO/tao/SHMIOP_Connect.cpp | 8 | ||||
-rw-r--r-- | TAO/tao/UIOP_Connect.cpp | 13 |
4 files changed, 47 insertions, 4 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a index 8dbd16c8185..099d88e503d 100644 --- a/TAO/ChangeLogs/ChangeLog-02a +++ b/TAO/ChangeLogs/ChangeLog-02a @@ -1,11 +1,19 @@ -Thu May 25 21:41:30 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> +Thu May 25 22:00:04 2000 Irfan Pyarali <irfan@cs.wustl.edu> - * orbsvcs/examples/Notify/Subscribe/Subscribe.cpp: - Fixed "A new-line character appears inside a string literal" error. + * tao/SHMIOP_Connect.cpp (svc): + * tao/IIOP_Connect.cpp (svc): + * tao/UIOP_Connect.cpp (svc): + + Reset errno to make sure we don't trip over an old value of + errno in case it is not reset when the recv() call fails if the + socket has been closed. Thanks to Tommy Andreasen + <tommy.andreasen@radiometer.dk> for reporting this bug and + providing a solution. Thu May 25 21:41:30 2000 Pradeep Gore <pradeep@flamenco.cs.wustl.edu> - * + * orbsvcs/examples/Notify/Subscribe/Subscribe.cpp: + Fixed "A new-line character appears inside a string literal" error. Thu May 25 19:35:30 2000 Jeff Parsons <parsons@cs.wustl.edu> @@ -499,9 +507,15 @@ Mon May 15 22:05:49 2000 Vishal Kachroo <vishal@cs.wustl.edu> <matthew@ooc.com> for pointing out the error. Mon May 15 20:03:11 2000 Pradeep Gore <pradeep@cumbia.cs.wustl.edu> + * orbsvcs/orbsvcs/Notify/Notify_Filter_i.h: Put in the fix for "inheritance via dominance error" +Mon May 15 18:19:53 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/Leader_Followers/client.cpp (class Client_Task): Added a + small pause to avoid overrunning the server. + Mon May 15 15:40:46 2000 Ossama Othman <ossama@uci.edu> * tao/IIOP_Connect.cpp (open): diff --git a/TAO/tao/IIOP_Connect.cpp b/TAO/tao/IIOP_Connect.cpp index dc9427abd4c..87c4dc79625 100644 --- a/TAO/tao/IIOP_Connect.cpp +++ b/TAO/tao/IIOP_Connect.cpp @@ -252,13 +252,21 @@ TAO_IIOP_Server_Connection_Handler::svc (void) && result >= 0) { result = handle_input_i (ACE_INVALID_HANDLE, max_wait_time); + if (result == -1 && errno == ETIME) { // Ignore timeouts, they are only used to wake up and // shutdown. result = 0; + + // Reset errno to make sure we don't trip over an old value + // of errno in case it is not reset when the recv() call + // fails if the socket has been closed. + errno = 0; } + current_timeout = timeout; + if (TAO_debug_level > 0) ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("TAO (%P|%t) IIOP_Server_Connection_Handler::svc - ") diff --git a/TAO/tao/SHMIOP_Connect.cpp b/TAO/tao/SHMIOP_Connect.cpp index 4ab225888d5..32b92d452c1 100644 --- a/TAO/tao/SHMIOP_Connect.cpp +++ b/TAO/tao/SHMIOP_Connect.cpp @@ -256,13 +256,21 @@ TAO_SHMIOP_Server_Connection_Handler::svc (void) && result >= 0) { result = handle_input_i (ACE_INVALID_HANDLE, max_wait_time); + if (result == -1 && errno == ETIME) { // Ignore timeouts, they are only used to wake up and // shutdown. result = 0; + + // Reset errno to make sure we don't trip over an old value + // of errno in case it is not reset when the recv() call + // fails if the socket has been closed. + errno = 0; } + current_timeout = timeout; + if (TAO_debug_level > 0) ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("TAO (%P|%t) SHMIOP_Server_Connection_Handler::svc - ") diff --git a/TAO/tao/UIOP_Connect.cpp b/TAO/tao/UIOP_Connect.cpp index e42084fb1a8..1b92cb113a7 100644 --- a/TAO/tao/UIOP_Connect.cpp +++ b/TAO/tao/UIOP_Connect.cpp @@ -241,12 +241,25 @@ TAO_UIOP_Server_Connection_Handler::svc (void) && result >= 0) { result = handle_input_i (ACE_INVALID_HANDLE, max_wait_time); + if (result == -1 && errno == ETIME) { // Ignore timeouts, they are only used to wake up and // shutdown. result = 0; + + // Reset errno to make sure we don't trip over an old value + // of errno in case it is not reset when the recv() call + // fails if the socket has been closed. + errno = 0; } + + current_timeout = timeout; + + if (TAO_debug_level > 0) + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("TAO (%P|%t) UIOP_Server_Connection_Handler::svc - ") + ACE_TEXT ("loop <%d>\n"), current_timeout.msec ())); } if (TAO_orbdebug) |