diff options
author | Moises Silva <moises.silva@gmail.com> | 2009-08-21 04:09:26 +0000 |
---|---|---|
committer | Moises Silva <moises.silva@gmail.com> | 2009-08-21 04:09:26 +0000 |
commit | 1c14bd4bfdf817ae082fe0d18de9f7828a75e9cb (patch) | |
tree | 4247b452570a4e0554cb5be189be42c1c207c179 /channels | |
parent | ad3776047340b350547991ecd9015bcdbc10728c (diff) |
increment the mfcr2 monitor count when clearing the call request
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@213454 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_dahdi.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c index 74cf4f719..3e2d9c70a 100644 --- a/channels/chan_dahdi.c +++ b/channels/chan_dahdi.c @@ -5271,7 +5271,12 @@ static int dahdi_hangup(struct ast_channel *ast) dahdi_r2_update_monitor_count(p->mfcr2, 1); } else if (p->mfcr2call) { ast_log(LOG_DEBUG, "Clearing call request on channel %d\n", p->channel); + /* since ast_request() was called but not ast_call() we have not yet dialed + and the openr2 stack will not call on_call_end callback, we need to unset + the mfcr2call flag and bump the monitor count so the monitor thread can take + care of this channel events from now on */ p->mfcr2call = 0; + dahdi_r2_update_monitor_count(p->mfcr2, 1); } #endif switch (p->sig) { |