]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
One-touch parking was calling back the wrong channel on timeout
authorTerry Wilson <twilson@digium.com>
Tue, 20 Jan 2009 23:49:34 +0000 (23:49 +0000)
committerTerry Wilson <twilson@digium.com>
Tue, 20 Jan 2009 23:49:34 +0000 (23:49 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@169581 65c4cc65-6c06-0410-ace0-fbb531ad65f3

res/res_features.c

index 1913d9419313125bafcc666ca0c061be1e9f8645..c7fa2ef10a5f4c079059c2a2308c00430922e840 100644 (file)
@@ -568,10 +568,12 @@ static int builtin_parkcall(struct ast_channel *chan, struct ast_channel *peer,
        struct ast_channel *parkee;
        int res = 0;
        struct ast_module_user *u;
+       const char *orig_chan_name;
 
        u = ast_module_user_add(chan);
 
        set_peers(&parker, &parkee, peer, chan, sense);
+       orig_chan_name = ast_strdupa(parker->name);
        /* we used to set chan's exten and priority to "s" and 1
           here, but this generates (in some cases) an invalid
           extension, and if "s" exists, could errantly
@@ -586,7 +588,7 @@ static int builtin_parkcall(struct ast_channel *chan, struct ast_channel *peer,
                res = ast_safe_sleep(chan, 1000);
 
        if (!res) { /* one direction used to call park_call.... */
-               masq_park_call_announce(parkee, parker, 0, NULL, NULL);
+               masq_park_call_announce(parkee, parker, 0, NULL, orig_chan_name);
                res = 0; /* PBX should hangup zombie channel */
        }