From: Matthew Jordan Date: Tue, 28 Oct 2014 16:40:33 +0000 (+0000) Subject: main/bridge: Destroy features struct on off nominal path during bridge impart X-Git-Tag: 12.7.0-rc1~25 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2447b36cf6b764ffc7996bf2ab2418b617867bfc;p=thirdparty%2Fasterisk.git main/bridge: Destroy features struct on off nominal path during bridge impart When a channel is imparted to a bridge, the invocation of the function may provide an ast_bridge_features struct. Upon passing this to ast_bridge_impart, the caller must assume that ownership has passed to the function, as in all paths the function destroys the struct prior to returning (as its purpose is to configure the behavior of the channel while in the bridge). On one off nominal path - where the channel already has a PBX thread - the struct was not being destroyed. This patch fixes that glitch. ASTERISK-24437 #close Reported by: Scott Griepentrog git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/12@426431 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/bridge.c b/main/bridge.c index 2383c7a930..af1406d839 100644 --- a/main/bridge.c +++ b/main/bridge.c @@ -1667,6 +1667,7 @@ int ast_bridge_impart(struct ast_bridge *bridge, if (ast_channel_pbx(chan)) { ast_log(AST_LOG_WARNING, "Channel %s has a PBX thread and cannot be imparted into bridge %s\n", ast_channel_name(chan), bridge->uniqueid); + ast_bridge_features_destroy(features); return -1; }