[Freeswitch-svn] [commit] r13285 - freeswitch/trunk/src
FreeSWITCH SVN
anthm at freeswitch.org
Tue May 12 07:54:34 PDT 2009
Author: anthm
Date: Tue May 12 09:54:34 2009
New Revision: 13285
Log:
FSCORE-357
Modified:
freeswitch/trunk/src/switch_channel.c
freeswitch/trunk/src/switch_ivr_originate.c
Modified: freeswitch/trunk/src/switch_channel.c
==============================================================================
--- freeswitch/trunk/src/switch_channel.c (original)
+++ freeswitch/trunk/src/switch_channel.c Tue May 12 09:54:34 2009
@@ -796,7 +796,7 @@
uint32_t to,
switch_channel_t *super_channel)
{
-
+
if (to) {
to++;
}
@@ -2314,6 +2314,12 @@
char dtstr[SWITCH_DTMF_LOG_LEN+1] = "";
int x = 0;
+ if (switch_channel_test_flag(channel, CF_TIMESTAMP_SET)) {
+ return SWITCH_STATUS_FALSE;
+ }
+
+ switch_channel_set_flag(channel, CF_TIMESTAMP_SET);
+
if (!(caller_profile = switch_channel_get_caller_profile(channel)) || !channel->variables) {
return SWITCH_STATUS_FALSE;
}
@@ -2506,8 +2512,6 @@
switch_snprintf(tmp, sizeof(tmp), "%" SWITCH_TIME_T_FMT, legbillusec);
switch_channel_set_variable(channel, "flow_billusec", tmp);
-
- switch_channel_set_flag(channel, CF_TIMESTAMP_SET);
return status;
}
Modified: freeswitch/trunk/src/switch_ivr_originate.c
==============================================================================
--- freeswitch/trunk/src/switch_ivr_originate.c (original)
+++ freeswitch/trunk/src/switch_ivr_originate.c Tue May 12 09:54:34 2009
@@ -2056,16 +2056,12 @@
channel = switch_core_session_get_channel(originate_status[i].peer_session);
- switch_channel_wait_for_flag(channel,
- CF_TIMESTAMP_SET,
- SWITCH_TRUE,
- 5000,
- NULL);
-
- if (!switch_channel_test_flag(channel, CF_TIMESTAMP_SET) || !switch_core_session_running(originate_status[i].peer_session)) {
- switch_core_session_reporting_state(originate_status[i].peer_session);
+ switch_channel_wait_for_state_timeout(channel, CS_REPORTING, 5000);
+
+ if (!switch_channel_test_flag(channel, CF_TIMESTAMP_SET)) {
+ switch_channel_set_timestamps(channel);
}
-
+
if (switch_ivr_generate_xml_cdr(originate_status[i].peer_session, &cdr) == SWITCH_STATUS_SUCCESS) {
if ((xml_text = switch_xml_toxml(cdr, SWITCH_FALSE))) {
switch_snprintf(buf, sizeof(buf), "%s_%d", cdr_var, ++cdr_total);
More information about the Freeswitch-svn
mailing list