Commit 4aa734c8 authored by Ghislain MARY's avatar Ghislain MARY

Memory leak fixes.

parent 05f0a9f8
......@@ -3550,6 +3550,8 @@ void linphone_configure_op_with_proxy(LinphoneCore *lc, SalOp *op, const Linphon
if (contact)
salAddress = sal_address_clone(const_cast<SalAddress *>(L_GET_PRIVATE_FROM_C_OBJECT(contact)->getInternalAddress()));
op->set_contact_address(salAddress);
if (salAddress)
sal_address_unref(salAddress);
}
op->enable_cnx_ip_to_0000_if_sendonly(!!lp_config_get_default_int(lc->config,"sip","cnx_ip_to_0000_if_sendonly_enabled",0)); /*also set in linphone_call_new_incoming*/
}
......
......@@ -107,8 +107,9 @@ shared_ptr<Call> CallPrivate::startReferredCall (const MediaSessionParams *param
lInfo() << "Starting new call to referred address " << q->getReferTo();
L_GET_PRIVATE(&msp)->setReferer(getActiveSession());
L_GET_PRIVATE(getActiveSession())->setReferPending(false);
LinphoneCall *newCall = linphone_core_invite_with_params(
q->getCore()->getCCore(), q->getReferTo().c_str(), L_GET_C_BACK_PTR(&msp));
LinphoneCallParams *lcp = L_GET_C_BACK_PTR(&msp);
LinphoneCall *newCall = linphone_core_invite_with_params(q->getCore()->getCCore(), q->getReferTo().c_str(), lcp);
linphone_call_params_unref(lcp);
if (newCall) {
getActiveSession()->getPrivate()->setTransferTarget(L_GET_PRIVATE_FROM_C_OBJECT(newCall)->getActiveSession());
L_GET_PRIVATE_FROM_C_OBJECT(newCall)->getActiveSession()->getPrivate()->notifyReferState();
......
......@@ -267,10 +267,10 @@ void MediaSessionPrivate::pauseForTransfer () {
void MediaSessionPrivate::pausedByRemote () {
L_Q();
MediaSessionParams *newParams = new MediaSessionParams(*getParams());
MediaSessionParams newParams(*getParams());
if (lp_config_get_int(linphone_core_get_config(q->getCore()->getCCore()), "sip", "inactive_video_on_pause", 0))
newParams->setVideoDirection(LinphoneMediaDirectionInactive);
acceptUpdate(newParams, CallSession::State::PausedByRemote, "Call paused by remote");
newParams.setVideoDirection(LinphoneMediaDirectionInactive);
acceptUpdate(&newParams, CallSession::State::PausedByRemote, "Call paused by remote");
}
void MediaSessionPrivate::remoteRinging () {
......
......@@ -533,6 +533,7 @@ static void simple_call_transfer(void) {
linphone_call_transfer(pauline_called_by_marie,laure_identity);
bctbx_free(laure_identity);
BC_ASSERT_TRUE(wait_for_list(lcs,&marie->stat.number_of_LinphoneCallRefered,1,2000));
/*marie pausing pauline*/
BC_ASSERT_TRUE(wait_for_list(lcs,&marie->stat.number_of_LinphoneCallPausing,1,2000));
......
......@@ -647,7 +647,7 @@ test_t presence_tests[] = {
/*TEST_ONE_TAG("Call with presence", call_with_presence, "LeaksMemory"),*/
TEST_NO_TAG("Unsubscribe while subscribing", unsubscribe_while_subscribing),
TEST_NO_TAG("Presence information", presence_information),
TEST_ONE_TAG("App managed presence failure", subscribe_failure_handle_by_app, "LeaksMemory"),
TEST_NO_TAG("App managed presence failure", subscribe_failure_handle_by_app),
TEST_NO_TAG("Presence SUBSCRIBE forked", subscribe_presence_forked),
TEST_NO_TAG("Presence SUBSCRIBE expired", subscribe_presence_expired),
};
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment