Set peer context and exten values so MACRO_EXTEN and MACRO_CONTEXT will be set
authorTerry Wilson <twilson@digium.com>
Fri, 9 Jan 2009 00:13:12 +0000 (00:13 +0000)
committerTerry Wilson <twilson@digium.com>
Fri, 9 Jan 2009 00:13:12 +0000 (00:13 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@167935 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_dial.c

index f59aeb4..1da4c8b 100644 (file)
@@ -1991,6 +1991,10 @@ static int dial_exec_full(struct ast_channel *chan, void *data, struct ast_flags
                        theapp = pbx_findapp("Macro");
 
                        if (theapp && !res) { /* XXX why check res here ? */
+                               /* Set peer->exten and peer->context so that MACRO_EXTEN and MACRO_CONTEXT get set */
+                               ast_copy_string(peer->context, chan->context, sizeof(peer->context));
+                               ast_copy_string(peer->exten, chan->exten, sizeof(peer->exten));
+
                                replace_macro_delimiter(opt_args[OPT_ARG_CALLEE_MACRO]);
                                res = pbx_exec(peer, theapp, opt_args[OPT_ARG_CALLEE_MACRO]);
                                ast_debug(1, "Macro exited with status %d\n", res);