]> sjero.net Git - linphone/commitdiff
Fix call not paused when entering conference.
authorGuillaume Beraudo <guillaume.beraudo@belledonne-communications.com>
Tue, 22 Nov 2011 10:09:33 +0000 (11:09 +0100)
committerGuillaume Beraudo <guillaume.beraudo@belledonne-communications.com>
Tue, 22 Nov 2011 10:09:33 +0000 (11:09 +0100)
coreapi/conference.c
coreapi/linphonecore_jni.cc
java/common/org/linphone/core/LinphoneCore.java

index 51623babeb0d3451c1c50f8198be3e2708ba2799..7efed4f2d9116f20db5d8918ae57e21b6ff2f390 100644 (file)
@@ -194,6 +194,9 @@ int linphone_core_enter_conference(LinphoneCore *lc){
        if (linphone_core_sound_resources_locked(lc)) {
                return -1;
        }
+       if (lc->current_call != NULL) {
+               linphone_core_pause_call(lc, lc->current_call);
+       }
        LinphoneConference *conf=&lc->conf_ctx;
        if (conf->local_participant==NULL) add_local_endpoint(conf,lc);
        return 0;
index 27fa417cc3c4858284bf1321c797b777eac86ce6..9347f3fffb9ad16e1c9bc7854c96aeb4b88dbbcf 100644 (file)
@@ -1471,8 +1471,8 @@ extern "C" jint Java_org_linphone_core_LinphoneCoreImpl_resumeCall(JNIEnv *env,j
 extern "C" jboolean Java_org_linphone_core_LinphoneCoreImpl_isInConference(JNIEnv *env,jobject thiz,jlong pCore) {
        return linphone_core_is_in_conference((LinphoneCore *) pCore);
 }
-extern "C" void Java_org_linphone_core_LinphoneCoreImpl_enterConference(JNIEnv *env,jobject thiz,jlong pCore) {
-       linphone_core_enter_conference((LinphoneCore *) pCore);
+extern "C" jboolean Java_org_linphone_core_LinphoneCoreImpl_enterConference(JNIEnv *env,jobject thiz,jlong pCore) {
+       return 0 == linphone_core_enter_conference((LinphoneCore *) pCore);
 }
 extern "C" void Java_org_linphone_core_LinphoneCoreImpl_leaveConference(JNIEnv *env,jobject thiz,jlong pCore) {
        linphone_core_leave_conference((LinphoneCore *) pCore);
index 30d87b4563d6627b1b636b0d42c1ce3a6730a94c..44ac2996f4cc07db31990431eff402c4560d7b35 100644 (file)
@@ -607,7 +607,7 @@ public interface LinphoneCore {
        void enableEchoLimiter(boolean val);
 
        boolean isInConference();
-       void enterConference();
+       boolean enterConference();
        void leaveConference();
 
        void addToConference(LinphoneCall call);