]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Fix regression for timed out parked call returning to caller
authorJeff Peeler <jpeeler@digium.com>
Wed, 13 Jan 2010 19:43:33 +0000 (19:43 +0000)
committerJeff Peeler <jpeeler@digium.com>
Wed, 13 Jan 2010 19:43:33 +0000 (19:43 +0000)
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: https://origsvn.digium.com/svn/asterisk/branches/1.4@239838 65c4cc65-6c06-0410-ace0-fbb531ad65f3

res/res_features.c

index e5a6179e44414dac40d0ad6be0d30b13f79e27e9..3a0edde81198650b05d4aed01d49d6bac6e68584 100644 (file)
@@ -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);