From d895c81dd50bc15e9c3588b1e5a0681cb8b0fb4e Mon Sep 17 00:00:00 2001 From: Brian West Date: Fri, 25 Apr 2008 23:20:23 +0000 Subject: [PATCH] fix buglet git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@8200 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- src/include/switch_cpp.h | 2 +- src/switch_cpp.cpp | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/include/switch_cpp.h b/src/include/switch_cpp.h index 9536b45e9a..588cffc61c 100644 --- a/src/include/switch_cpp.h +++ b/src/include/switch_cpp.h @@ -148,7 +148,7 @@ class CoreSession { int answer(); int preAnswer(); - virtual void hangup(char *cause); + virtual void hangup(char *cause = "normal_clearing"); void setVariable(char *var, char *val); const char *getVariable(char *var); diff --git a/src/switch_cpp.cpp b/src/switch_cpp.cpp index 1ab5e21198..39bdd6b481 100644 --- a/src/switch_cpp.cpp +++ b/src/switch_cpp.cpp @@ -185,12 +185,13 @@ CoreSession::CoreSession(char *nuuid) memset(&caller_profile, 0, sizeof(caller_profile)); init_vars(); if (session = switch_core_session_locate(nuuid)) { - channel = switch_core_session_get_channel(session); uuid = strdup(nuuid); + channel = switch_core_session_get_channel(session); allocated = 1; } else { switch_call_cause_t cause; if (switch_ivr_originate(NULL, &session, &cause, nuuid, 60, NULL, NULL, NULL, NULL, SOF_NONE) == SWITCH_STATUS_SUCCESS) { + channel = switch_core_session_get_channel(session); allocated = 1; switch_set_flag(this, S_HUP); uuid = strdup(switch_core_session_get_uuid(session)); @@ -494,6 +495,7 @@ int CoreSession::originate(CoreSession *a_leg_session, } if (a_leg_session) a_leg_session->end_allow_threads(); + channel = switch_core_session_get_channel(session); allocated = 1; switch_channel_set_state(switch_core_session_get_channel(session), CS_TRANSMIT);