Merged revisions 236300 via svnmerge from

https://origsvn.digium.com/svn/asterisk/trunk

........
  r236300 | tilghman | 2009-12-23 12:25:27 -0600 (Wed, 23 Dec 2009) | 7 lines
  
  AGI may be invoked from outside the dialplan
  (closes issue #16510)
   Reported by: atis
   Patches: 
         20091223__issue16510.diff.txt uploaded by tilghman (license 14)
   Tested by: atis
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@236301 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Tilghman Lesher
2009-12-23 18:26:47 +00:00
parent fcb8c1f7f6
commit e64f40d888

View File

@@ -452,12 +452,12 @@ static int handle_gosub(struct ast_channel *chan, AGI *agi, int argc, char **arg
* call a Gosub for the CALLEE channel in Dial or Queue.
*/
if (argc == 5) {
if (asprintf(&gosub_args, "%s,%s,%d(%s)", argv[1], argv[2], priority + 1, argv[4]) < 0) {
if (asprintf(&gosub_args, "%s,%s,%d(%s)", argv[1], argv[2], priority + (chan->pbx ? 1 : 0), argv[4]) < 0) {
ast_log(LOG_WARNING, "asprintf() failed: %s\n", strerror(errno));
gosub_args = NULL;
}
} else {
if (asprintf(&gosub_args, "%s,%s,%d", argv[1], argv[2], priority + 1) < 0) {
if (asprintf(&gosub_args, "%s,%s,%d", argv[1], argv[2], priority + (chan->pbx ? 1 : 0)) < 0) {
ast_log(LOG_WARNING, "asprintf() failed: %s\n", strerror(errno));
gosub_args = NULL;
}