summaryrefslogtreecommitdiff
path: root/main/pbx.c
diff options
context:
space:
mode:
authorJoshua Colp <jcolp@digium.com>2008-02-11 17:25:04 +0000
committerJoshua Colp <jcolp@digium.com>2008-02-11 17:25:04 +0000
commitef267cd83817c17c46b2b924e765edebd13bb508 (patch)
tree810994ff6468af7010edc0082054bc9b6ced91b0 /main/pbx.c
parenta33932047d117be9c1ba23812b74eec3d38b2cd1 (diff)
Fix Manager Redirect while in an AGI.
(closes issue #10661) Reported by: junky git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103317 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/pbx.c')
-rw-r--r--main/pbx.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/main/pbx.c b/main/pbx.c
index 693c4b8b4..82fe6c449 100644
--- a/main/pbx.c
+++ b/main/pbx.c
@@ -3288,6 +3288,9 @@ static int __ast_pbx_run(struct ast_channel *c)
/* If the AbsoluteTimeout is not reset to 0, we'll get an infinite loop */
c->whentohangup = 0;
c->_softhangup &= ~AST_SOFTHANGUP_TIMEOUT;
+ } else if (c->_softhangup == AST_SOFTHANGUP_ASYNCGOTO) {
+ c->_softhangup = 0;
+ continue;
} else if (ast_check_hangup(c)) {
ast_debug(1, "Extension %s, priority %d returned normally even though call was hung up\n",
c->exten, c->priority);