diff options
author | schmidt <douglascraigschmidt@users.noreply.github.com> | 2001-12-09 16:02:22 +0000 |
---|---|---|
committer | schmidt <douglascraigschmidt@users.noreply.github.com> | 2001-12-09 16:02:22 +0000 |
commit | 6d794ee9ab5fd411c3298ffee8f59f5ea924e3eb (patch) | |
tree | e4119a95c63ee53b1ee2de473565bbda3d1b779b | |
parent | 77f6ef3c61953067c7791f46c8c998b3c1642486 (diff) | |
download | ATCD-6d794ee9ab5fd411c3298ffee8f59f5ea924e3eb.tar.gz |
ChangeLogTag:Sun Dec 9 08:54:38 2001 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-02a | 7 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-03a | 7 | ||||
-rw-r--r-- | ace/Activation_Queue.cpp | 8 | ||||
-rw-r--r-- | tests/Logging_Strategy_Test.cpp | 1 |
5 files changed, 29 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 3f3ced5c761..d832c0be2a1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ Sun Dec 9 08:54:38 2001 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + * ace/Activation_Queue.cpp (enqueue): Fixed a leak where the + dynamically allocated ACE_Message_Block wasn't being released if + enqueue_prio() failed. Thanks to Dan Gilboa + <dgilboa@qualcomm.com> for reporting this. + + * tests/Logging_Strategy_Test.cpp (run_reactor): Fixed a warning. + * tests/MEM_Stream_Test.cpp: Added a call to ACE_Thread_Manager::wait() to ensure the test shuts down in the right order. Thanks to Michael Searles <msearles@base16.com> for reporting this. diff --git a/ChangeLogs/ChangeLog-02a b/ChangeLogs/ChangeLog-02a index 3f3ced5c761..d832c0be2a1 100644 --- a/ChangeLogs/ChangeLog-02a +++ b/ChangeLogs/ChangeLog-02a @@ -1,5 +1,12 @@ Sun Dec 9 08:54:38 2001 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + * ace/Activation_Queue.cpp (enqueue): Fixed a leak where the + dynamically allocated ACE_Message_Block wasn't being released if + enqueue_prio() failed. Thanks to Dan Gilboa + <dgilboa@qualcomm.com> for reporting this. + + * tests/Logging_Strategy_Test.cpp (run_reactor): Fixed a warning. + * tests/MEM_Stream_Test.cpp: Added a call to ACE_Thread_Manager::wait() to ensure the test shuts down in the right order. Thanks to Michael Searles <msearles@base16.com> for reporting this. diff --git a/ChangeLogs/ChangeLog-03a b/ChangeLogs/ChangeLog-03a index 3f3ced5c761..d832c0be2a1 100644 --- a/ChangeLogs/ChangeLog-03a +++ b/ChangeLogs/ChangeLog-03a @@ -1,5 +1,12 @@ Sun Dec 9 08:54:38 2001 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu> + * ace/Activation_Queue.cpp (enqueue): Fixed a leak where the + dynamically allocated ACE_Message_Block wasn't being released if + enqueue_prio() failed. Thanks to Dan Gilboa + <dgilboa@qualcomm.com> for reporting this. + + * tests/Logging_Strategy_Test.cpp (run_reactor): Fixed a warning. + * tests/MEM_Stream_Test.cpp: Added a call to ACE_Thread_Manager::wait() to ensure the test shuts down in the right order. Thanks to Michael Searles <msearles@base16.com> for reporting this. diff --git a/ace/Activation_Queue.cpp b/ace/Activation_Queue.cpp index d0ebe4a133e..9d5b0bca11e 100644 --- a/ace/Activation_Queue.cpp +++ b/ace/Activation_Queue.cpp @@ -97,7 +97,13 @@ ACE_Activation_Queue::enqueue (ACE_Method_Request *mr, -1); // Enqueue in priority order. - return this->queue_->enqueue_prio (mb, tv); + int result = this->queue_->enqueue_prio (mb, tv); + + // Free ACE_Message_Block if enqueue_prio failed. + if (result == -1) + ACE_DES_FREE (mb, this->allocator_->free, ACE_Message_Block); + + return result; } diff --git a/tests/Logging_Strategy_Test.cpp b/tests/Logging_Strategy_Test.cpp index 804e2abe3b8..300df509913 100644 --- a/tests/Logging_Strategy_Test.cpp +++ b/tests/Logging_Strategy_Test.cpp @@ -98,6 +98,7 @@ run_reactor (void *) ACE_Reactor::instance ()->owner (ACE_Thread_Manager::instance ()->thr_self ()); ACE_Reactor::instance ()->run_reactor_event_loop (); + return 0; } // Initiate the cycle of messages. |