aboutsummaryrefslogtreecommitdiffstats
path: root/apps/app_sms.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/app_sms.c')
-rw-r--r--apps/app_sms.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/apps/app_sms.c b/apps/app_sms.c
index d32491a2d..0a20c8b23 100644
--- a/apps/app_sms.c
+++ b/apps/app_sms.c
@@ -1958,6 +1958,10 @@ static int sms_exec(struct ast_channel *chan, void *data)
res = h.err;
goto done;
}
+
+ if (chan->_state != AST_STATE_UP) { /* make sure channel is answered before any TX */
+ ast_answer(chan);
+ }
if (ast_test_flag(&flags, OPTION_ANSWER)) {
h.framenumber = 1; /* Proto 2 */
@@ -1972,10 +1976,6 @@ static int sms_exec(struct ast_channel *chan, void *data)
sms_messagetx(&h);
}
- if (chan->_state != AST_STATE_UP) {
- ast_answer(chan);
- }
-
res = ast_set_write_format(chan, __OUT_FMT);
if (res >= 0) {
res = ast_set_read_format(chan, AST_FORMAT_SLINEAR);