Module: sems
Branch: master
Commit: 97c135c367b6a6a0607007c82d00b6494d93e0d8
URL: 
https://github.com/sems-server/sems/commit/97c135c367b6a6a0607007c82d00b6494d93e0d8

Author: Stefan Sayer <stefan.sa...@googlemail.com>
Committer: Stefan Sayer <stefan.sa...@googlemail.com>
Date: 2015-06-09T17:07:45+02:00

b/f:b2bua: fix negative replies in ivr/dsm b2bua calls

reported loooong time ago by Juha Heinanen

---

Modified: core/AmB2BSession.cpp

---

Diff:  
https://github.com/sems-server/sems/commit/97c135c367b6a6a0607007c82d00b6494d93e0d8.diff
Patch: 
https://github.com/sems-server/sems/commit/97c135c367b6a6a0607007c82d00b6494d93e0d8.patch

---

diff --git a/core/AmB2BSession.cpp b/core/AmB2BSession.cpp
index 05e4c6f..527d678 100644
--- a/core/AmB2BSession.cpp
+++ b/core/AmB2BSession.cpp
@@ -638,9 +638,11 @@ void AmB2BSession::onSessionTimeout() {
 }
 
 void AmB2BSession::onRemoteDisappeared(const AmSipReply& reply) {
-  DBG("remote unreachable, ending other leg\n");
-  terminateOtherLeg();
-  AmSession::onRemoteDisappeared(reply);
+  if (dlg && dlg->getStatus() == AmBasicSipDialog::Connected) {
+    DBG("%c leg: remote unreachable, ending other leg\n", a_leg?'A':'B');
+    terminateOtherLeg();
+    AmSession::onRemoteDisappeared(reply);
+  }
 }
 
 void AmB2BSession::onNoAck(unsigned int cseq)

_______________________________________________
Semsdev mailing list
Semsdev@lists.iptel.org
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to