From 3dd016d7b523f1ea8c4cadcacea5672550bbfcc9 Mon Sep 17 00:00:00 2001 From: BJ Weschke Date: Thu, 15 Dec 2005 02:49:17 +0000 Subject: [PATCH] Bug #6003 - Don't free the channel structure until after having sent the manager event. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7481 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channel.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/channel.c b/channel.c index e321a36738..e573e855eb 100644 --- a/channel.c +++ b/channel.c @@ -3055,7 +3055,6 @@ int ast_do_masquerade(struct ast_channel *original) if (ast_test_flag(clone, AST_FLAG_ZOMBIE)) { ast_log(LOG_DEBUG, "Destroying channel clone '%s'\n", clone->name); ast_mutex_unlock(&clone->lock); - ast_channel_free(clone); manager_event(EVENT_FLAG_CALL, "Hangup", "Channel: %s\r\n" "Uniqueid: %s\r\n" @@ -3066,6 +3065,7 @@ int ast_do_masquerade(struct ast_channel *original) clone->hangupcause, ast_cause2str(clone->hangupcause) ); + ast_channel_free(clone); } else { struct ast_frame null_frame = { AST_FRAME_NULL, }; ast_log(LOG_DEBUG, "Released clone lock on '%s'\n", clone->name);