From b26f9e3f3c07b667ab1f11296b21fecf71ba2fd4 Mon Sep 17 00:00:00 2001
From: Alexandre Savard <alexandresavard@alexandresavard-desktop.(none)>
Date: Fri, 16 Apr 2010 16:55:08 -0400
Subject: [PATCH] [#3233] Send conferenceChanged dbus signal in detach
 participant

---
 sflphone-common/src/managerimpl.cpp | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/sflphone-common/src/managerimpl.cpp b/sflphone-common/src/managerimpl.cpp
index 9db64e3f56..c6e0fa8369 100644
--- a/sflphone-common/src/managerimpl.cpp
+++ b/sflphone-common/src/managerimpl.cpp
@@ -1156,15 +1156,19 @@ void ManagerImpl::detachParticipant (const CallID& call_id,
 				onHoldCall(call_id);
 
 				removeParticipant(call_id);
-
 				processRemainingParticipant(current_call_id, conf);
+
+				_dbus->getCallManager()->conferenceChanged(conf->getConfID(),
+				conf->getStateStr());
 			}
-		} else {
+		} 
+		else {
 
 			_debug ("Manager: Call is not conferencing, cannot detach");
 
 		}
-	} else {
+	} 
+	else {
 		_debug ("Manager: Unbind main participant from all");
 		_audiodriver->getMainBuffer()->unBindAll(default_id);
 
@@ -1211,9 +1215,6 @@ void ManagerImpl::removeParticipant (const CallID& call_id) {
 		conf->remove(call_id);
 		call->setConfId("");
 
-		_dbus->getCallManager()->conferenceChanged(conf->getConfID(),
-		 					   conf->getStateStr());	
-
 	}
 
 	if (_audiodriver)
@@ -1648,8 +1649,8 @@ void ManagerImpl::peerHungupCall (const CallID& call_id) {
 		if (conf != NULL) {
 
 			removeParticipant(call_id);
-
 			processRemainingParticipant(current_call_id, conf);
+
 		}
 	} else {
 		if (isCurrentCall(call_id)) {
-- 
GitLab