summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2001-03-25 18:08:06 +0000
committercoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2001-03-25 18:08:06 +0000
commit49953d45908d655dd2d5f2e5b7de1b251a0f0622 (patch)
tree444d72baa78a59266c9bd20722408b6c5acf4e49
parent0bf91e8150a4ba9451868f9533e78db51e72b50d (diff)
downloadATCD-49953d45908d655dd2d5f2e5b7de1b251a0f0622.tar.gz
ChangeLogTag:Sun Mar 25 09:55:38 2001 Carlos O'Ryan <coryan@uci.edu>
-rw-r--r--TAO/ChangeLogs/ChangeLog-02a50
-rw-r--r--TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Connection_Handler.cpp17
-rw-r--r--TAO/tao/IIOP_Connection_Handler.cpp19
-rw-r--r--TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp18
-rw-r--r--TAO/tao/Strategies/UIOP_Connection_Handler.cpp18
5 files changed, 71 insertions, 51 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a
index 0ee7c46dd18..8703fe4f27d 100644
--- a/TAO/ChangeLogs/ChangeLog-02a
+++ b/TAO/ChangeLogs/ChangeLog-02a
@@ -1,35 +1,45 @@
+Sun Mar 25 09:55:38 2001 Carlos O'Ryan <coryan@uci.edu>
+
+ * tao/IIOP_Connection_Handler.cpp:
+ * tao/Strategies/SHMIOP_Connection_Handler.cpp:
+ * tao/Strategies/UIOP_Connection_Handler.cpp:
+ * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Connection_Handler.cpp:
+ Change handle_close() method, the object should be deleted even
+ if it is not registered with the Reactor. I think this fixes
+ [BUGID:837]
+
Sun Mar 25 11:44:05 2001 Balachandran Natarajan <bala@cs.wustl.edu>
- * tao/Transport.cpp: Fixed a warning in cxx. The problem was in
- casting 'this' pointer to an 'int'. Changed the cast to 'long'
- so that cxx doesnt complain.
+ * tao/Transport.cpp: Fixed a warning in cxx. The problem was in
+ casting 'this' pointer to an 'int'. Changed the cast to 'long'
+ so that cxx doesnt complain.
Sun Mar 25 11:17:40 2001 Balachandran Natarajan <bala@cs.wustl.edu>
- * orbsvcs/orbsvcs/Sched/Reconfig_Sched_Utils.h:
- * orbsvcs/orbsvcs/Sched/Reconfig_Sched_Utils.cpp:
- * orbsvcs/orbsvcs/Sched/Reconfig_Sched_Utils_T.h:
- * orbsvcs/orbsvcs/Sched/Reconfig_Sched_Utils_T.cpp: Removed
- redundant guards for old g++. These files got missed in the last
- change.
+ * orbsvcs/orbsvcs/Sched/Reconfig_Sched_Utils.h:
+ * orbsvcs/orbsvcs/Sched/Reconfig_Sched_Utils.cpp:
+ * orbsvcs/orbsvcs/Sched/Reconfig_Sched_Utils_T.h:
+ * orbsvcs/orbsvcs/Sched/Reconfig_Sched_Utils_T.cpp: Removed
+ redundant guards for old g++. These files got missed in the last
+ change.
Sun Mar 25 08:52:48 2001 Balachandran Natarajan <bala@cs.wustl.edu>
- * orbsvcs/orbsvcs/Makefile.RTSched: Added guards for old g++.
-
- * orbsvcs/orbsvcs/Sched/Reconfig_Scheduler.cpp:
- * orbsvcs/orbsvcs/Sched/Reconfig_Scheduler.h:
- * orbsvcs/orbsvcs/Sched/Reconfig_Scheduler_T.cpp:
- * orbsvcs/orbsvcs/Sched/Reconfig_Scheduler_T.h: Removed redundant
- guards in the files. This should fix a small compilation
- problem in LYNX-I386 builds.
+ * orbsvcs/orbsvcs/Makefile.RTSched: Added guards for old g++.
+
+ * orbsvcs/orbsvcs/Sched/Reconfig_Scheduler.cpp:
+ * orbsvcs/orbsvcs/Sched/Reconfig_Scheduler.h:
+ * orbsvcs/orbsvcs/Sched/Reconfig_Scheduler_T.cpp:
+ * orbsvcs/orbsvcs/Sched/Reconfig_Scheduler_T.h: Removed redundant
+ guards in the files. This should fix a small compilation
+ problem in LYNX-I386 builds.
Sun Mar 25 07:42:44 2001 Balachandran Natarajan <bala@cs.wustl.edu>
- * examples/PluggableUDP/DIOP/DIOP_Connection_Handler.cpp :
- Under Win32 the handle() has to be cast before setting the id()
+ * examples/PluggableUDP/DIOP/DIOP_Connection_Handler.cpp :
+ Under Win32 the handle() has to be cast before setting the id()
field on TAO_Transport.
-
+
Sat Mar 24 22:15:23 2001 Carlos O'Ryan <coryan@uci.edu>
* tao/Invocation.cpp:
diff --git a/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Connection_Handler.cpp b/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Connection_Handler.cpp
index 477da2e6fec..212834667e6 100644
--- a/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Connection_Handler.cpp
+++ b/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Connection_Handler.cpp
@@ -202,13 +202,18 @@ TAO_SSLIOP_Connection_Handler::handle_close (ACE_HANDLE handle,
rm));
--this->pending_upcalls_;
- if (this->pending_upcalls_ == 0 &&
- this->is_registered ())
+ if (this->pending_upcalls_ == 0)
{
- // Set the flag to indicate that it is no longer registered with
- // the reactor, so that it isn't included in the set that is
- // passed to the reactor on ORB destruction.
- this->is_registered (0);
+ if (this->is_registered ())
+ {
+ // Make sure there are no timers.
+ this->reactor ()->cancel_timer (this);
+
+ // Set the flag to indicate that it is no longer registered with
+ // the reactor, so that it isn't included in the set that is
+ // passed to the reactor on ORB destruction.
+ this->is_registered (0);
+ }
// Close the handle..
if (this->get_handle () != ACE_INVALID_HANDLE)
diff --git a/TAO/tao/IIOP_Connection_Handler.cpp b/TAO/tao/IIOP_Connection_Handler.cpp
index 900a4fb7801..9cbae306281 100644
--- a/TAO/tao/IIOP_Connection_Handler.cpp
+++ b/TAO/tao/IIOP_Connection_Handler.cpp
@@ -192,16 +192,18 @@ TAO_IIOP_Connection_Handler::handle_close (ACE_HANDLE handle,
rm));
--this->pending_upcalls_;
- if (this->pending_upcalls_ == 0 &&
- this->is_registered ())
+ if (this->pending_upcalls_ == 0)
{
- // Make sure there are no timers.
- this->reactor ()->cancel_timer (this);
+ if (this->is_registered ())
+ {
+ // Make sure there are no timers.
+ this->reactor ()->cancel_timer (this);
- // Set the flag to indicate that it is no longer registered with
- // the reactor, so that it isn't included in the set that is
- // passed to the reactor on ORB destruction.
- this->is_registered (0);
+ // Set the flag to indicate that it is no longer registered with
+ // the reactor, so that it isn't included in the set that is
+ // passed to the reactor on ORB destruction.
+ this->is_registered (0);
+ }
// Close the handle..
if (this->get_handle () != ACE_INVALID_HANDLE)
@@ -223,7 +225,6 @@ TAO_IIOP_Connection_Handler::handle_close (ACE_HANDLE handle,
// Follow usual Reactor-style lifecycle semantics and commit
// suicide.
delete this;
-
}
return 0;
diff --git a/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp b/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp
index f5d6318f019..55f8e594e91 100644
--- a/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp
+++ b/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp
@@ -196,16 +196,18 @@ TAO_SHMIOP_Connection_Handler::handle_close (ACE_HANDLE handle,
rm));
--this->pending_upcalls_;
- if (this->pending_upcalls_ == 0 &&
- this->is_registered ())
+ if (this->pending_upcalls_ == 0)
{
- // Make sure there are no timers.
- this->reactor ()->cancel_timer (this);
+ if (this->is_registered ())
+ {
+ // Make sure there are no timers.
+ this->reactor ()->cancel_timer (this);
- // Set the flag to indicate that it is no longer registered with
- // the reactor, so that it isn't included in the set that is
- // passed to the reactor on ORB destruction.
- this->is_registered (0);
+ // Set the flag to indicate that it is no longer registered with
+ // the reactor, so that it isn't included in the set that is
+ // passed to the reactor on ORB destruction.
+ this->is_registered (0);
+ }
// Close the handle..
if (this->get_handle () != ACE_INVALID_HANDLE)
diff --git a/TAO/tao/Strategies/UIOP_Connection_Handler.cpp b/TAO/tao/Strategies/UIOP_Connection_Handler.cpp
index 0daf5ee4571..07ee64fc0b9 100644
--- a/TAO/tao/Strategies/UIOP_Connection_Handler.cpp
+++ b/TAO/tao/Strategies/UIOP_Connection_Handler.cpp
@@ -178,16 +178,18 @@ TAO_UIOP_Connection_Handler::handle_close (ACE_HANDLE handle,
rm));
--this->pending_upcalls_;
- if (this->pending_upcalls_ == 0 &&
- this->is_registered ())
+ if (this->pending_upcalls_ == 0)
{
- // Make sure there are no timers.
- this->reactor ()->cancel_timer (this);
+ if (this->is_registered ())
+ {
+ // Make sure there are no timers.
+ this->reactor ()->cancel_timer (this);
- // Set the flag to indicate that it is no longer registered with
- // the reactor, so that it isn't included in the set that is
- // passed to the reactor on ORB destruction.
- this->is_registered (0);
+ // Set the flag to indicate that it is no longer registered with
+ // the reactor, so that it isn't included in the set that is
+ // passed to the reactor on ORB destruction.
+ this->is_registered (0);
+ }
// Close the handle..
if (this->get_handle () != ACE_INVALID_HANDLE)