From 3322095dea33c7ab1c053c650a46804c7f93d24d Mon Sep 17 00:00:00 2001 From: Christian Richter Date: Tue, 19 Jun 2007 13:23:04 +0000 Subject: [PATCH] when we send out a SETUP, but get no response, we should cleanup everything after reception of a hangup. git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@69887 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/chan_misdn.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/channels/chan_misdn.c b/channels/chan_misdn.c index 3181a1a53b..a5aef1dfb0 100644 --- a/channels/chan_misdn.c +++ b/channels/chan_misdn.c @@ -2304,8 +2304,14 @@ static int misdn_hangup(struct ast_channel *ast) chan_misdn_log(2, bc->port, " --> state:%s\n", misdn_get_ch_state(p)); switch (p->state) { - case MISDN_INCOMING_SETUP: case MISDN_CALLING: + case MISDN_INCOMING_SETUP: + /* This is the only place in misdn_hangup, where we + * can call release_chan, else it might create lot's of trouble + * */ + ast_log(LOG_NOTICE, "release channel, in CALLING/INCOMING_SETUP state.. no other events happened\n"); + release_chan(bc); + p->state=MISDN_CLEANING; misdn_lib_send_event( bc, EVENT_RELEASE_COMPLETE); break; -- 2.47.2