Fix WaitExten(x,m(musicclass)) string termination.

The AST_CONTROL_HOLD MOH class from the WaitExten application can now be
queued onto a channel, passed over local channels with the /m option, and
passed over IAX channels.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@367469 65c4cc65-6c06-0410-ace0-fbb531ad65f3
certified/1.8.15
Richard Mudgett 13 years ago
parent e456e4a8f1
commit c88ad5e919

@ -9675,7 +9675,8 @@ static int pbx_builtin_waitexten(struct ast_channel *chan, const char *data)
if (ast_test_flag(&flags, WAITEXTEN_MOH) && !opts[0] ) { if (ast_test_flag(&flags, WAITEXTEN_MOH) && !opts[0] ) {
ast_log(LOG_WARNING, "The 'm' option has been specified for WaitExten without a class.\n"); ast_log(LOG_WARNING, "The 'm' option has been specified for WaitExten without a class.\n");
} else if (ast_test_flag(&flags, WAITEXTEN_MOH)) { } else if (ast_test_flag(&flags, WAITEXTEN_MOH)) {
ast_indicate_data(chan, AST_CONTROL_HOLD, S_OR(opts[0], NULL), strlen(opts[0])); ast_indicate_data(chan, AST_CONTROL_HOLD, S_OR(opts[0], NULL),
!ast_strlen_zero(opts[0]) ? strlen(opts[0]) + 1 : 0);
} else if (ast_test_flag(&flags, WAITEXTEN_DIALTONE)) { } else if (ast_test_flag(&flags, WAITEXTEN_DIALTONE)) {
struct ast_tone_zone_sound *ts = ast_get_indication_tone(chan->zone, "dial"); struct ast_tone_zone_sound *ts = ast_get_indication_tone(chan->zone, "dial");
if (ts) { if (ts) {

Loading…
Cancel
Save