From 2df01ab32b74ec4fee194295969eaadc6c4189c6 Mon Sep 17 00:00:00 2001 From: Matthew Jordan Date: Sun, 24 Feb 2013 15:45:29 +0000 Subject: [PATCH] Make ParkAndAnnounce return to priority + 1 when return context is not defined The ParkAndAnnounce application documentation for the optional return_context parameter states the following: return_context The goto-style label to jump the call back into after timeout. Default 'priority+1'. Unfortunately, the application was sending the channel back into the dialplan at 'priority', which is the ParkAndAnnounce application call. This causes an infinite loop of the channel constantly being parked, announced, timed out, parked, announced, timed out... while fun, especially for those callers you wish to drive to the end of madness, this was not the intent of the application. (closes issue ASTERISK-20113) Reported by: serginuez patches: app_parkandannounce.diff uploaded by serginuez (License 6405) ........ Merged revisions 381916 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 381917 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@381918 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_parkandannounce.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/app_parkandannounce.c b/apps/app_parkandannounce.c index 172f0236cd..6d6ccae261 100644 --- a/apps/app_parkandannounce.c +++ b/apps/app_parkandannounce.c @@ -139,6 +139,8 @@ static int parkandannounce_exec(struct ast_channel *chan, const char *data) if (!ast_strlen_zero(args.return_context)) { ast_clear_flag(ast_channel_flags(chan), AST_FLAG_IN_AUTOLOOP); ast_parseable_goto(chan, args.return_context); + } else { + ast_channel_priority_set(chan, ast_channel_priority(chan) + 1); } ast_verb(3, "Return Context: (%s,%s,%d) ID: %s\n", ast_channel_context(chan), ast_channel_exten(chan), -- 2.47.2