From: Tilghman Lesher Date: Fri, 14 Nov 2008 00:41:37 +0000 (+0000) Subject: ast_waitfordigit() requires that the channel be up, for no good logical X-Git-Tag: 1.4.23-rc2~3^2~31 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=bc208d63c2753e58c107d52bfca5c6d302873b35;p=thirdparty%2Fasterisk.git ast_waitfordigit() requires that the channel be up, for no good logical reason. This prevents While/EndWhile from working within the "h" extension. Reported by: jgalarneau (for ABE C.2) Fixed by: me git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@156755 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/apps/app_while.c b/apps/app_while.c index 8595916f30..8e8fabd5b4 100644 --- a/apps/app_while.c +++ b/apps/app_while.c @@ -181,12 +181,16 @@ static int _while_exec(struct ast_channel *chan, void *data, int end) u = ast_module_user_add(chan); +#if 0 /* dont want run away loops if the chan isn't even up this is up for debate since it slows things down a tad ...... + + Debate is over... this prevents While/EndWhile from working + within the "h" extension. Not good. */ if (ast_waitfordigit(chan,1) < 0) ALL_DONE(u,-1); - +#endif for (x=0;;x++) { if (get_index(chan, prefix, x)) {