summaryrefslogtreecommitdiff
path: root/main
diff options
context:
space:
mode:
authorMark Michelson <mmichelson@digium.com>2008-10-01 21:06:26 +0000
committerMark Michelson <mmichelson@digium.com>2008-10-01 21:06:26 +0000
commita23b8c91589790b773e044963efe82db9a95dc7b (patch)
tree68226e12b5eb5c144ac363a7388c0ddba5dd9fb5 /main
parent803b6799de521b3357e7bfd393ebf1dee61cace8 (diff)
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/trunk@145553 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main')
-rw-r--r--main/features.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/main/features.c b/main/features.c
index 36057c0d2..e65c51904 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)