aboutsummaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorkpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b>2009-11-16 12:52:48 +0000
committerkpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b>2009-11-16 12:52:48 +0000
commit2c57981227bf7f8d6d48f6e73e6c517dc35f8f5f (patch)
treeef052500a4fc6f77992cc9d216d16f1bd947add2 /apps
parent072c37f0fb7c5f75db00581815a6f40e2f5200fc (diff)
Merged revisions 230343 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ........ r230343 | kpfleming | 2009-11-16 06:51:59 -0600 (Mon, 16 Nov 2009) | 2 lines Ensure that only one end of a T.38 session initiates teardown at completion. ........ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.0@230344 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps')
-rw-r--r--apps/app_fax.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/apps/app_fax.c b/apps/app_fax.c
index 70a1bdd3a..02be085fb 100644
--- a/apps/app_fax.c
+++ b/apps/app_fax.c
@@ -658,7 +658,11 @@ static int transmit_t38(fax_session *s)
t38_terminal_release(&t38);
disable_t38:
- if (ast_channel_get_t38_state(s->chan) == T38_STATE_NEGOTIATED) {
+ /* if we are not the caller, it's our job to shut down the T.38
+ * session when the FAX transmisson is complete.
+ */
+ if ((s->caller_mode == FALSE) &&
+ (ast_channel_get_t38_state(s->chan) == T38_STATE_NEGOTIATED)) {
if (ast_indicate_data(s->chan, AST_CONTROL_T38_PARAMETERS, &t38_parameters, sizeof(t38_parameters)) == 0) {
/* wait up to five seconds for negotiation to complete */
unsigned int timeout = 5000;