FS-10637: [core] FreeSWITCH crash in 'enterprise originate' API caused due to fix done for FS-10596 #resolve

This commit is contained in:
Anthony Minessale 2017-09-01 11:19:34 -05:00
parent 68fc3b5120
commit 3c524021ca
1 changed files with 7 additions and 5 deletions

View File

@ -1672,12 +1672,14 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_enterprise_originate(switch_core_sess
*bleg = hp->bleg;
if (*bleg) {
switch_channel_t *bchan = switch_core_session_get_channel(*bleg);
switch_caller_profile_t *cloned_profile, *peer_profile = switch_channel_get_caller_profile(switch_core_session_get_channel(*bleg));
if (peer_profile && (cloned_profile = switch_caller_profile_clone(session, peer_profile))) {
switch_channel_set_originatee_caller_profile(channel, cloned_profile);
}
if (bchan && cp && (cloned_profile = switch_caller_profile_clone(*bleg, cp))) {
switch_caller_profile_t *cloned_profile;
if (session) {
cloned_profile = switch_caller_profile_clone(*bleg, cp);
switch_channel_set_originator_caller_profile(bchan, cloned_profile);
cloned_profile = switch_caller_profile_clone(session, switch_channel_get_caller_profile(bchan));
switch_channel_set_originatee_caller_profile(channel, cloned_profile);
}
}
switch_mutex_unlock(hp->mutex);