From: Joshua Colp Date: Fri, 13 Oct 2006 21:20:18 +0000 (+0000) Subject: Inherit the context and extension until the channel is answered X-Git-Tag: 1.6.0-beta1~3^2~4413 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1e3c5bc5baef2ad9c59fffb2b94a409064b215f5;p=thirdparty%2Fasterisk.git Inherit the context and extension until the channel is answered git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@45109 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/apps/app_dial.c b/apps/app_dial.c index 27eb2b0aae..95bbc4dc0b 100644 --- a/apps/app_dial.c +++ b/apps/app_dial.c @@ -455,6 +455,8 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct dial_l OPT_CALLEE_MONITOR | OPT_CALLER_MONITOR | OPT_CALLEE_PARK | OPT_CALLER_PARK | DIAL_NOFORWARDHTML); + ast_copy_string(c->context, "", sizeof(c->context)); + ast_copy_string(c->exten, "", sizeof(c->exten)); } continue; } @@ -574,6 +576,8 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct dial_l OPT_CALLEE_MONITOR | OPT_CALLER_MONITOR | OPT_CALLEE_PARK | OPT_CALLER_PARK | DIAL_NOFORWARDHTML); + ast_copy_string(c->context, "", sizeof(c->context)); + ast_copy_string(c->exten, "", sizeof(c->exten)); /* Setup early bridge if appropriate */ ast_channel_early_bridge(in, peer); } @@ -1169,6 +1173,10 @@ static int dial_exec_full(struct ast_channel *chan, void *data, struct ast_flags if (outbound_group) ast_app_group_set_channel(tmp->chan, outbound_group); + /* Inherit context and extension */ + ast_copy_string(tmp->chan->context, chan->context, sizeof(tmp->chan->context)); + ast_copy_string(tmp->chan->exten, chan->exten, sizeof(tmp->chan->exten)); + /* Place the call, but don't wait on the answer */ res = ast_call(tmp->chan, numsubst, 0);