When a channel is in autoservice, mark a flag on the channel that says that

we only care about the END of a digit.  That way, no magic digit emulation stuff
will happen when all we're doing is queueing up END frames.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@94797 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Russell Bryant
2007-12-26 18:46:39 +00:00
parent 39c5c66235
commit 52df524ba0

View File

@@ -176,6 +176,7 @@ int ast_autoservice_start(struct ast_channel *chan)
} else { } else {
/* New entry created */ /* New entry created */
as->chan = chan; as->chan = chan;
ast_set_flag(chan, AST_FLAG_END_DTMF_ONLY);
as->use_count = 1; as->use_count = 1;
AST_LIST_INSERT_HEAD(&aslist, as, list); AST_LIST_INSERT_HEAD(&aslist, as, list);
if (asthread == AST_PTHREADT_NULL) { /* need start the thread */ if (asthread == AST_PTHREADT_NULL) { /* need start the thread */
@@ -218,6 +219,7 @@ int ast_autoservice_stop(struct ast_channel *chan)
removed = 1; removed = 1;
if (!chan->_softhangup) if (!chan->_softhangup)
res = 0; res = 0;
ast_clear_flag(chan, AST_FLAG_END_DTMF_ONLY);
break; break;
} }
} }