[asterisk-commits] tilghman: branch 1.4 r100675 - /branches/1.4/main/pbx.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Jan 28 15:02:02 CST 2008


Author: tilghman
Date: Mon Jan 28 15:02:02 2008
New Revision: 100675

URL: http://svn.digium.com/view/asterisk?view=rev&rev=100675
Log:
WaitExten didn't handle AbsoluteTimeout properly (went to 't' instead of 'T')

Modified:
    branches/1.4/main/pbx.c

Modified: branches/1.4/main/pbx.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/main/pbx.c?view=diff&rev=100675&r1=100674&r2=100675
==============================================================================
--- branches/1.4/main/pbx.c (original)
+++ branches/1.4/main/pbx.c Mon Jan 28 15:02:02 2008
@@ -5632,10 +5632,14 @@
 		if (ast_exists_extension(chan, chan->context, chan->exten, chan->priority + 1, chan->cid.cid_num)) {
 			if (option_verbose > 2)
 				ast_verbose(VERBOSE_PREFIX_3 "Timeout on %s, continuing...\n", chan->name);
+		} else if (chan->_softhangup == AST_SOFTHANGUP_TIMEOUT) {
+			if (option_verbose > 2)
+				ast_verbose(VERBOSE_PREFIX_3 "Call timeout on %s, checking for 'T'\n", chan->name);
+			res = -1;
 		} else if (ast_exists_extension(chan, chan->context, "t", 1, chan->cid.cid_num)) {
 			if (option_verbose > 2)
 				ast_verbose(VERBOSE_PREFIX_3 "Timeout on %s, going to 't'\n", chan->name);
-			set_ext_pri(chan, "t", 0); /* XXX is the 0 correct ? */
+			set_ext_pri(chan, "t", 0); /* 0 will become 1, next time through the loop */
 		} else {
 			ast_log(LOG_WARNING, "Timeout but no rule 't' in context '%s'\n", chan->context);
 			res = -1;




More information about the asterisk-commits mailing list