aboutsummaryrefslogtreecommitdiffstats
path: root/channels/h323/ast_h323.cpp
diff options
context:
space:
mode:
authorjeremy <jeremy@f38db490-d61c-443f-a65b-d21fe96a405b>2004-12-16 04:25:49 +0000
committerjeremy <jeremy@f38db490-d61c-443f-a65b-d21fe96a405b>2004-12-16 04:25:49 +0000
commitc805315084b5f9803b152eb565bb1253fcb5ed43 (patch)
treeb4995f24e7f34f2ba4afdffda0a38ed5b0bee5c4 /channels/h323/ast_h323.cpp
parentee9a76e7cb3df0d6b28229e8ae7b1667e4a48c3f (diff)
Properly deal with Q.931 cause codes
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4470 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/h323/ast_h323.cpp')
-rwxr-xr-xchannels/h323/ast_h323.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/channels/h323/ast_h323.cpp b/channels/h323/ast_h323.cpp
index fc77e9b85..91e8b85c1 100755
--- a/channels/h323/ast_h323.cpp
+++ b/channels/h323/ast_h323.cpp
@@ -301,7 +301,7 @@ BOOL MyH323EndPoint::ClearCall(const PString & token)
if (h323debug) {
cout << "\t-- ClearCall: Request to clear call with token " << token << endl;
}
- return ClearCall(token, H323Connection::EndedByLocalUser);
+ return H323EndPoint::ClearCall(token, H323Connection::EndedByLocalUser);
}
void MyH323EndPoint::SendUserTone(const PString &token, char tone)
@@ -1287,13 +1287,15 @@ int h323_make_call(char *dest, call_details_t *cd, call_options_t *call_options)
int h323_clear_call(const char *call_token, int cause)
{
H225_ReleaseCompleteReason dummy;
- H323Connection::CallEndReason r = H323Connection::NumCallEndReasons;
+ H323Connection::CallEndReason r = H323Connection::EndedByLocalUser;
if (!h323_end_point_exist()) {
return 1;
}
- r = H323TranslateToCallEndReason((Q931::CauseValues)(cause), dummy);
+ if (cause) {
+ r = H323TranslateToCallEndReason((Q931::CauseValues)(cause), dummy);
+ }
endPoint->ClearCall(PString(call_token), r);
return 0;