From a7da5b2e765178cbbda6772ee97f0022b1ac0c3a Mon Sep 17 00:00:00 2001 From: Mark Michelson Date: Wed, 1 Oct 2008 21:20:20 +0000 Subject: [PATCH] Merged revisions 145553 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ........ r145553 | mmichelson | 2008-10-01 16:06:26 -0500 (Wed, 01 Oct 2008) | 13 lines The logic surrounding the return value of ast_spawn_extension within ast_bridge_call was reversed. This problem was observed when a blind transfer placed from the callee channel of a test call failed. While the problem I am solving here is exactly the same as what was reported in issue #13584, the difference is that this fix I am applying is trunk-only. Issue #13584 was reported against the 1.4 branch, and my tests of 1.4's blind transfers appear to work fine. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@145557 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- main/features.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main/features.c b/main/features.c index 4616ec188c..795d77d91c 100644 --- a/main/features.c +++ b/main/features.c @@ -2379,7 +2379,7 @@ int ast_bridge_call(struct ast_channel *chan,struct ast_channel *peer,struct ast ast_copy_string(chan->exten, "h", sizeof(chan->exten)); chan->priority = 1; ast_channel_unlock(chan); - while ((res = ast_spawn_extension(chan, chan->context, chan->exten, chan->priority, chan->cid.cid_num, &found, 1)) == 0) { + while (!(res = ast_spawn_extension(chan, chan->context, chan->exten, chan->priority, chan->cid.cid_num, &found, 1)) == 0) { chan->priority++; } if (found && res)