diff --git a/tester/call_single_tester.c b/tester/call_single_tester.c index c3f65ac5c..691f1dfb1 100644 --- a/tester/call_single_tester.c +++ b/tester/call_single_tester.c @@ -305,10 +305,11 @@ bool_t call_with_params2(LinphoneCoreManager* caller_mgr ||(caller_mgr->stat.number_of_LinphoneCallOutgoingEarlyMedia==initial_caller.number_of_LinphoneCallOutgoingEarlyMedia+1)); - BC_ASSERT_PTR_NOT_NULL(linphone_core_get_current_call_remote_address(callee_mgr->lc)); + if (linphone_core_get_calls_nb(callee_mgr->lc) == 1) + BC_ASSERT_PTR_NOT_NULL(linphone_core_get_current_call_remote_address(callee_mgr->lc)); /*only relevant if one call, otherwise, not always set*/ callee_call=linphone_core_get_call_by_remote_address2(callee_mgr->lc,caller_mgr->identity); - if(!linphone_core_get_current_call(caller_mgr->lc) || !linphone_core_get_current_call(callee_mgr->lc) || !linphone_core_get_current_call_remote_address(callee_mgr->lc)) { + if(!linphone_core_get_current_call(caller_mgr->lc) || (!callee_call && !linphone_core_get_current_call(callee_mgr->lc)) /*for privacy case*/) { return 0; } else if (caller_mgr->identity){ LinphoneAddress* callee_from=linphone_address_clone(caller_mgr->identity); @@ -337,7 +338,7 @@ bool_t call_with_params2(LinphoneCoreManager* caller_mgr } BC_ASSERT_TRUE(wait_for(callee_mgr->lc,caller_mgr->lc,&callee_mgr->stat.number_of_LinphoneCallConnected,initial_callee.number_of_LinphoneCallConnected+1)); - BC_ASSERT_TRUE(wait_for(callee_mgr->lc,caller_mgr->lc,&caller_mgr->stat.number_of_LinphoneCallConnected,initial_callee.number_of_LinphoneCallConnected+1)); + BC_ASSERT_TRUE(wait_for(callee_mgr->lc,caller_mgr->lc,&caller_mgr->stat.number_of_LinphoneCallConnected,initial_caller.number_of_LinphoneCallConnected+1)); result = wait_for_until(callee_mgr->lc,caller_mgr->lc,&caller_mgr->stat.number_of_LinphoneCallStreamsRunning,initial_caller.number_of_LinphoneCallStreamsRunning+1, 2000) && diff --git a/tester/tester.c b/tester/tester.c index 8e9af1629..131252823 100644 --- a/tester/tester.c +++ b/tester/tester.c @@ -850,7 +850,7 @@ static void linphone_conference_server_registration_state_changed(LinphoneCore * LinphoneConferenceServer* linphone_conference_server_new(const char *rc_file, bool_t do_registration) { LinphoneConferenceServer *conf_srv = (LinphoneConferenceServer *)ms_new0(LinphoneConferenceServer, 1); LinphoneCoreManager *lm = (LinphoneCoreManager *)conf_srv; - + LinphoneProxyConfig *proxy; conf_srv->vtable = linphone_core_v_table_new(); conf_srv->vtable->call_state_changed = linphone_conference_server_call_state_changed; conf_srv->vtable->refer_received = linphone_conference_server_refer_received; @@ -858,13 +858,17 @@ LinphoneConferenceServer* linphone_conference_server_new(const char *rc_file, bo conf_srv->vtable->user_data = conf_srv; conf_srv->reg_state = LinphoneRegistrationNone; linphone_core_manager_init(lm, rc_file,NULL); + if (!do_registration) { + proxy = linphone_core_get_default_proxy_config(lm->lc); + linphone_proxy_config_edit(proxy); + linphone_proxy_config_enable_register(proxy,FALSE); + linphone_proxy_config_done(proxy); + } linphone_core_add_listener(lm->lc, conf_srv->vtable); linphone_core_manager_start(lm, do_registration); return conf_srv; } void linphone_conference_server_destroy(LinphoneConferenceServer *conf_srv) { - linphone_core_manager_uninit((LinphoneCoreManager *)conf_srv); - linphone_core_v_table_destroy(conf_srv->vtable); - ms_free(conf_srv); + linphone_core_manager_destroy((LinphoneCoreManager *)conf_srv); }