From 80fc9540f957a62ad42beef8b64c0eaa259051bc Mon Sep 17 00:00:00 2001
From: "Kevin P. Fleming" <kpfleming@digium.com>
Date: Mon, 16 Nov 2009 16:40:25 +0000
Subject: [PATCH] Fix another buglet in T.38 session teardown at the end of FAX
 sessions.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@230381 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 apps/app_fax.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/apps/app_fax.c b/apps/app_fax.c
index 6a33fe7a30..dab02af2f5 100644
--- a/apps/app_fax.c
+++ b/apps/app_fax.c
@@ -598,7 +598,6 @@ static int transmit_t38(fax_session *s)
 	struct timeval now, start, state_change, last_frame;
 	t30_state_t *t30state;
 	t38_core_state_t *t38state;
-	struct ast_control_t38_parameters t38_parameters = { .request_response = AST_T38_REQUEST_TERMINATE, };
 
 #if SPANDSP_RELEASE_DATE >= 20080725
 	/* for spandsp shaphots 0.0.6 and higher */
@@ -711,6 +710,8 @@ disable_t38:
 	 */
 	if ((s->caller_mode == FALSE) &&
 	    (ast_channel_get_t38_state(s->chan) == T38_STATE_NEGOTIATED)) {
+		struct ast_control_t38_parameters t38_parameters = { .request_response = AST_T38_REQUEST_TERMINATE, };
+
 		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;
@@ -742,7 +743,7 @@ disable_t38:
 					struct ast_control_t38_parameters *parameters = inf->data.ptr;
 					
 					switch (parameters->request_response) {
-					case AST_T38_NEGOTIATED:
+					case AST_T38_TERMINATED:
 						ast_debug(1, "Shut down T.38 on %s\n", s->chan->name);
 						break;
 					case AST_T38_REFUSED:
-- 
GitLab