From 45110ff36e9a4b4b2f1c833ee44dab1925d54400 Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Thu, 12 Mar 2009 16:47:47 +0000 Subject: [PATCH] FSCORE-331 git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@12585 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- src/switch_core_session.c | 2 +- src/switch_ivr_originate.c | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/switch_core_session.c b/src/switch_core_session.c index d400e1faa3..6919012660 100644 --- a/src/switch_core_session.c +++ b/src/switch_core_session.c @@ -463,7 +463,7 @@ SWITCH_DECLARE(switch_call_cause_t) switch_core_session_outgoing_channel(switch_ } } - if (peer_profile) { + if (peer_profile && !(flags & SOF_FORKED_DIAL)) { if ((cloned_profile = switch_caller_profile_clone(session, peer_profile)) != 0) { switch_channel_set_originatee_caller_profile(channel, cloned_profile); } diff --git a/src/switch_ivr_originate.c b/src/switch_ivr_originate.c index 7f3b8346dc..c6bca07a73 100644 --- a/src/switch_ivr_originate.c +++ b/src/switch_ivr_originate.c @@ -2118,6 +2118,16 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_originate(switch_core_session_t *sess } if (*bleg) { + if (caller_channel && !switch_channel_get_originatee_caller_profile(caller_channel)) { + switch_caller_profile_t *cloned_profile, *peer_profile = switch_channel_get_caller_profile(switch_core_session_get_channel(*bleg)); + + if (peer_profile) { + if ((cloned_profile = switch_caller_profile_clone(*bleg, peer_profile)) != 0) { + switch_channel_set_originatee_caller_profile(caller_channel, cloned_profile); + } + } + } + switch_ivr_sleep(*bleg, 0, SWITCH_TRUE, NULL); }