Hi,

we discovered a deadlock against the session audio mutex, which happens
when AmRtpAudio::init() throws an exception. The attached patch against
sems master fixes the problem.

Regards,
Emil

-- 
Emil Kroymann
VoIP Services Engineer

Email: [email protected]
Tel: +49-30-203899885
Mobile: +49-176-38389303

ISACO GmbH
Kurfürstenstraße 79
10787 Berlin
Germany

Amtsgericht Charlottenburg, HRB 112464B
Geschäftsführer: Daniel Frommherz

diff --git a/core/AmSession.cpp b/core/AmSession.cpp
index de0d8e5..ddf4d0d 100644
--- a/core/AmSession.cpp
+++ b/core/AmSession.cpp
@@ -1060,7 +1060,13 @@ int AmSession::onSdpCompleted(const AmSdp& local_sdp, const AmSdp& remote_sdp)
   //   - check if the stream coresponding to the media ID 
   //     should be created or updated   
   //
-  int ret = RTPStream()->init(local_sdp,remote_sdp);
+  int ret = 0;
+  try {
+    ret = RTPStream()->init(getPayloadProvider(),0,local_sdp,remote_sdp);
+  } catch (...) {
+    ERROR("AmRTPStream::init caused exception...");
+    ret = -1;
+  }
   unlockAudio();
 
   if (!isProcessingMedia()) {

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to