diff options
author | bala <balanatarajan@users.noreply.github.com> | 2001-05-07 16:42:24 +0000 |
---|---|---|
committer | bala <balanatarajan@users.noreply.github.com> | 2001-05-07 16:42:24 +0000 |
commit | 4c4dddab6ed59ebb69f51bba0d8a000d7214e679 (patch) | |
tree | 36952aff141066ac7fac7982f1249e50d6910f8d | |
parent | 3956b6bca183ff8cc8187c03b2f3d15ebe6d8858 (diff) | |
download | ATCD-4c4dddab6ed59ebb69f51bba0d8a000d7214e679.tar.gz |
ChangeLogTag: Mon May 7 11:37:43 2001 Balachandran Natarajan <bala@cs.wustl.edu>
-rw-r--r-- | TAO/ChangeLogs/ChangeLog-02a | 11 | ||||
-rw-r--r-- | TAO/tao/ORB_Core.cpp | 12 |
2 files changed, 17 insertions, 6 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a index 7d1990f80c7..7083f52dd84 100644 --- a/TAO/ChangeLogs/ChangeLog-02a +++ b/TAO/ChangeLogs/ChangeLog-02a @@ -1,3 +1,14 @@ +Mon May 7 11:37:43 2001 Balachandran Natarajan <bala@cs.wustl.edu> + + * tao/ORB_Core.cpp (fini): Deferred the deletion of the allocators + till the reactor registry is deleted. The RTCORBA has a + configuration called Reactor-Per-Priority, which deletes the + service handlers only when the registry is deleted. There seems + to be a subtle problem in the way the handlers are de-registered + from the reactor for this particular configuration. We will look + at that problem next. This fix should get around that problem + for the time being. + Mon May 7 9:10:36 2001 Yamuna Krishnamurthy <yamuna@cs.wustl.edu> * orbsvcs/tests/AVStreams/Component_Switching/run_test.pl: diff --git a/TAO/tao/ORB_Core.cpp b/TAO/tao/ORB_Core.cpp index 398b7c25400..b43274367d0 100644 --- a/TAO/tao/ORB_Core.cpp +++ b/TAO/tao/ORB_Core.cpp @@ -1219,18 +1219,18 @@ TAO_ORB_Core::fini (void) if (this->resource_factory_ != 0) this->resource_factory_->reclaim_reactor (this->reactor_); + (void) TAO_Internal::close_services (); + + delete this->reactor_registry_; + if (this->message_block_dblock_allocator_) - this->message_block_dblock_allocator_->remove (); - delete this->message_block_dblock_allocator_; + this->message_block_dblock_allocator_->remove (); + delete this->message_block_dblock_allocator_; if (this-> message_block_buffer_allocator_) this->message_block_buffer_allocator_->remove (); delete this->message_block_buffer_allocator_; - (void) TAO_Internal::close_services (); - - delete this->reactor_registry_; - // @@ This is not needed since the default resource factory // is statically added to the service configurator, fredk if (!this->resource_factory_from_service_config_) |