[asterisk-scf-commits] asterisk-scf/integration/ice-util-cpp.git branch "single_pruning_timer" updated.

Commits to the Asterisk SCF project code repositories asterisk-scf-commits at lists.digium.com
Thu Jul 12 10:20:49 CDT 2012


branch "single_pruning_timer" has been updated
       via  ec898608c5d28ae481a18ba0c2c2a3aa027b8aae (commit)
       via  8d8637d15c345c4f5154782ba8d0b10ffb4bfc28 (commit)
       via  298cd37ffa93d18a5f0e7284de057c8d024ee297 (commit)
       via  09f61426008844f791481372becfe8b2798ab467 (commit)
       via  dd106821624a7b45b6011c8e8ffa37d137c83892 (commit)
      from  85a0401bafbaf015e7e125637d404d37b9dce3ba (commit)

Summary of changes:
 include/AsteriskSCF/Operations/OperationMonitor.h |   10 ++++++++++
 src/ThreadPool/ThreadPool.cpp                     |    8 ++++++++
 src/ThreadPool/WorkerThread.cpp                   |   19 +++++++++++++------
 3 files changed, 31 insertions(+), 6 deletions(-)


- Log -----------------------------------------------------------------
commit ec898608c5d28ae481a18ba0c2c2a3aa027b8aae
Merge: 85a0401 8d8637d
Author: Brent Eagles <beagles at digium.com>
Date:   Thu Jul 12 12:11:04 2012 -0230

    Merge branch 'master' into single_pruning_timer


commit 8d8637d15c345c4f5154782ba8d0b10ffb4bfc28
Author: Brent Eagles <beagles at digium.com>
Date:   Thu Jun 28 13:10:13 2012 -0230

    Missed clearing the callbacks from the non-return value AMD methods.

diff --git a/include/AsteriskSCF/Operations/OperationMonitor.h b/include/AsteriskSCF/Operations/OperationMonitor.h
index 9e11b79..4214eb9 100644
--- a/include/AsteriskSCF/Operations/OperationMonitor.h
+++ b/include/AsteriskSCF/Operations/OperationMonitor.h
@@ -353,6 +353,7 @@ ASTSCF_DLL_EXPORT void AMDContextData<CB>::onSetException()
     {
         (*iter)->ice_exception(*(mExceptionResult->exception()));
     }
+    mCallbacks.clear();
 }
 
 template <class CB>
@@ -363,6 +364,7 @@ ASTSCF_DLL_EXPORT void AMDContextData<CB>::onSetCompleted()
     {
         (*iter)->ice_response();
     }
+    mCallbacks.clear();
 }
 
 /**

commit 298cd37ffa93d18a5f0e7284de057c8d024ee297
Merge: 09f6142 dd10682
Author: Brent Eagles <beagles at digium.com>
Date:   Thu Jun 28 13:00:24 2012 -0230

    Merge branch 'alternate_thread_cleanup'


commit 09f61426008844f791481372becfe8b2798ab467
Author: Brent Eagles <beagles at digium.com>
Date:   Thu Jun 28 12:59:25 2012 -0230

    Clear cached AMD callbacks as soon as possible.

diff --git a/include/AsteriskSCF/Operations/OperationMonitor.h b/include/AsteriskSCF/Operations/OperationMonitor.h
index 968f910..9e11b79 100644
--- a/include/AsteriskSCF/Operations/OperationMonitor.h
+++ b/include/AsteriskSCF/Operations/OperationMonitor.h
@@ -498,6 +498,10 @@ private:
         {
             (*iter)->ice_response(ContextResultData<RT>::mResult);
         }
+        //
+        // Force the issue that these callbacks will never be reused.
+        //
+        mCallbacks.clear();
     }
 
     void onSetException()
@@ -507,6 +511,10 @@ private:
         {
             (*iter)->ice_exception(*(mExceptionResult->exception()));
         }
+        //
+        // Force the issue that these callbacks will never be reused.
+        //
+        mCallbacks.clear();
     }
     CB mAMDProxy;
     std::vector<CB> mCallbacks;

-----------------------------------------------------------------------


-- 
asterisk-scf/integration/ice-util-cpp.git



More information about the asterisk-scf-commits mailing list