[asterisk-scf-commits] asterisk-scf/integration/media_rtp_pjmedia.git branch "srtp-support" updated.

Commits to the Asterisk SCF project code repositories asterisk-scf-commits at lists.digium.com
Tue Jul 12 09:50:37 CDT 2011


branch "srtp-support" has been updated
       via  b4ebf6392981bbfbf8d5a31a286feac32cd82903 (commit)
       via  419fef07884a942bc740a15ac82bbcbd316c9a0d (commit)
      from  3ec994ea36ab64aa3118952ab836fc7c3f77c40a (commit)

Summary of changes:
 src/RTPConfiguration.cpp  |    5 ++++-
 src/SRTPConfiguration.cpp |   10 ++++++++++
 2 files changed, 14 insertions(+), 1 deletions(-)


- Log -----------------------------------------------------------------
commit b4ebf6392981bbfbf8d5a31a286feac32cd82903
Author: Brent Eagles <beagles at digium.com>
Date:   Tue Jul 12 12:19:50 2011 -0230

    Adding a once initialization in an attempt to solve a runtime issue on Windows
    (so far does not seem to address the issue)

diff --git a/src/SRTPConfiguration.cpp b/src/SRTPConfiguration.cpp
index 9ae53ae..a9b492e 100644
--- a/src/SRTPConfiguration.cpp
+++ b/src/SRTPConfiguration.cpp
@@ -16,10 +16,19 @@
 
 #include "SRTPConfiguration.h"
 #include <Ice/Properties.h>
+#include <boost/thread/once.hpp>
+#include <pjmedia.h>
 
 using namespace std;
 using namespace AsteriskSCF::PJMediaRTP;
 
+static void initSRTPLib()
+{
+    pjmedia_srtp_init_lib();
+}
+
+static boost::once_flag srtpOnce = BOOST_ONCE_INIT;
+
 SRTPConfigurationPtr AsteriskSCF::PJMediaRTP::SRTPConfiguration::create(const Ice::PropertiesPtr&,
         const string& propertyPrefix)
 {
@@ -42,4 +51,5 @@ SRTPConfigurationPtr AsteriskSCF::PJMediaRTP::SRTPConfiguration::create(bool ena
 SRTPConfiguration::SRTPConfiguration(bool enabled) :
    mEnabled(enabled)
 {
+    boost::call_once(&initSRTPLib, srtpOnce);
 }

commit 419fef07884a942bc740a15ac82bbcbd316c9a0d
Author: Brent Eagles <beagles at digium.com>
Date:   Tue Jul 12 11:35:42 2011 -0230

    Remove deadlock due to recursive lock

diff --git a/src/RTPConfiguration.cpp b/src/RTPConfiguration.cpp
index 1a3b477..378b569 100644
--- a/src/RTPConfiguration.cpp
+++ b/src/RTPConfiguration.cpp
@@ -115,7 +115,10 @@ public:
     {
         mGeneralGroup = group;
 
-        boost::unique_lock<boost::shared_mutex> lock(mLock);
+        //
+        // There is most likely a lock already held on the configuration data
+        //
+
         if (mGeneralGroup)
         {
             ConfigurationItemDict::const_iterator item = 

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


-- 
asterisk-scf/integration/media_rtp_pjmedia.git



More information about the asterisk-scf-commits mailing list