diff --git a/coreapi/callbacks.c b/coreapi/callbacks.c index d3bb3b6fb..62147c4cd 100644 --- a/coreapi/callbacks.c +++ b/coreapi/callbacks.c @@ -1016,7 +1016,7 @@ static void call_failure(SalOp *op){ /* Stop ringing */ while(calls) { - if (((LinphoneCall *)calls->data)->state == LinphoneCallIncomingReceived) { + if (((LinphoneCall *)calls->data)->state == LinphoneCallIncomingReceived || (linphone_core_get_ring_during_incoming_early_media(lc) && ((LinphoneCall *)calls->data)->state == LinphoneCallIncomingEarlyMedia)) { stop_ringing = FALSE; break; } diff --git a/coreapi/linphonecall.c b/coreapi/linphonecall.c index dcd420ebf..5bc756aa0 100644 --- a/coreapi/linphonecall.c +++ b/coreapi/linphonecall.c @@ -5260,7 +5260,7 @@ static void terminate_call(LinphoneCall *call) { /* Stop ringing */ while(calls) { - if (((LinphoneCall *)calls->data)->state == LinphoneCallIncomingReceived) { + if (((LinphoneCall *)calls->data)->state == LinphoneCallIncomingReceived || (linphone_core_get_ring_during_incoming_early_media(lc) && ((LinphoneCall *)calls->data)->state == LinphoneCallIncomingEarlyMedia)) { stop_ringing = FALSE; break; }