aboutsummaryrefslogtreecommitdiffstats
path: root/res
diff options
context:
space:
mode:
authorjpeeler <jpeeler@f38db490-d61c-443f-a65b-d21fe96a405b>2010-01-13 19:43:33 +0000
committerjpeeler <jpeeler@f38db490-d61c-443f-a65b-d21fe96a405b>2010-01-13 19:43:33 +0000
commitefaaa0699688fd359ca19b771753e9b03acdd404 (patch)
treec978b8fd0693c5fbbc02569e131015c74761f6b5 /res
parentd033cebab7019332527a8afa293c292d9cec3591 (diff)
Fix regression for timed out parked call returning to caller
This issue seems to have been exposed by the fix in 160390 whereby using a masquerade prevented a crash. The new channel used in the masquerade was not copying the macro information from the old channel. (closes issue #15459) Reported by: djrodman Patches: patch_15459.txt uploaded by mnick (license ) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@239838 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'res')
-rw-r--r--res/res_features.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/res/res_features.c b/res/res_features.c
index e5a6179e4..3a0edde81 100644
--- a/res/res_features.c
+++ b/res/res_features.c
@@ -581,6 +581,11 @@ static int masq_park_call(struct ast_channel *rchan, struct ast_channel *peer, i
/* Setup the extensions and such */
set_c_e_p(chan, rchan->context, rchan->exten, rchan->priority);
+ /* Setup the macro extension and such */
+ ast_copy_string(chan->macrocontext,rchan->macrocontext,sizeof(chan->macrocontext));
+ ast_copy_string(chan->macroexten,rchan->macroexten,sizeof(chan->macroexten));
+ chan->macropriority = rchan->macropriority;
+
/* Make the masq execute */
if ((f = ast_read(chan))) {
ast_frfree(f);