Module: sems
Branch: master
Commit: 922651a0ae986b513ba6c93620ff1239f79ad48c
URL:    
http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commit;h=922651a0ae986b513ba6c93620ff1239f79ad48c

Author: Václav Kubart <[email protected]>
Committer: Václav Kubart <[email protected]>
Date:   Mon Mar  4 14:01:19 2013 +0100

b/f: avoid possible infinite loop

allow calling setStopped from onStop handler

fixes 5fd073dce06b9972ba975ab921277fa7b30f8e7d

---

 core/AmSession.cpp |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/core/AmSession.cpp b/core/AmSession.cpp
index 201a6c1..29d9b4c 100644
--- a/core/AmSession.cpp
+++ b/core/AmSession.cpp
@@ -480,8 +480,10 @@ void AmSession::finalize() {
 }
 
 void AmSession::setStopped(bool wakeup) {
-  if (!sess_stopped.get()) onStop();
-  sess_stopped.set(true); 
+  if (!sess_stopped.get()) {
+    sess_stopped.set(true); 
+    onStop();
+  }
   if (wakeup) 
     AmSessionContainer::instance()->postEvent(getLocalTag(), 
                                              new AmEvent(0));

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

Reply via email to