From: David Vossel Date: Thu, 7 Jan 2010 20:42:27 +0000 (+0000) Subject: fixes ast_transfer stall until hangup if called with a channel that doesn't support... X-Git-Tag: 11.0.0-beta1~3646 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a575a50cd56a5608fcfab07b14e53fbb608de554;p=thirdparty%2Fasterisk.git fixes ast_transfer stall until hangup if called with a channel that doesn't support transfers ast_transfer sets res to 0 if there is no technology transfer function, but then tests for it to be negative before deciding to do an early exit. As a result, it will will wait for an AST_CONTROL_TRANSFER message that will never come. (closes issue #16424) Reported by: davidw Patches: Issue_16424_trunk_234134.patch uploaded by davidw (license 780) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@238492 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/channel.c b/main/channel.c index cb30e1449b..bb78c76fa3 100644 --- a/main/channel.c +++ b/main/channel.c @@ -4597,7 +4597,7 @@ int ast_transfer(struct ast_channel *chan, char *dest) } ast_channel_unlock(chan); - if (res < 0) { + if (res <= 0) { return res; }