From c7c3fa1d53032f4e899cb7a99aa5976b99726162 Mon Sep 17 00:00:00 2001 From: "Kevin P. Fleming" <kpfleming@digium.com> Date: Tue, 15 Nov 2005 20:56:19 +0000 Subject: [PATCH] issue #5672 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7106 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- ChangeLog | 2 ++ channels/chan_alsa.c | 10 ++++++++-- channels/chan_oss_old.c | 1 + 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index da22209eb0..bfa067675d 100755 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2005-11-15 Kevin P. Fleming <kpfleming@limerick.digium.com> + * channels/chan_alsa.c (alsa_hangup): handle autohangup properly (issue #5672) + * channels/chan_misdn.c (and other files): various fixes (issue #5739) * channels/chan_sip.c (handle_request_info): properly forward 'flash' events received via SIP INFO (issue #5751, different patch) diff --git a/channels/chan_alsa.c b/channels/chan_alsa.c index 961abef544..9bef8f3c72 100755 --- a/channels/chan_alsa.c +++ b/channels/chan_alsa.c @@ -582,8 +582,14 @@ static int alsa_hangup(struct ast_channel *c) usecnt--; ast_mutex_unlock(&usecnt_lock); if (hookstate) { - res = 2; - write(sndcmd[1], &res, sizeof(res)); + if (autoanswer) { + hookstate = 0; + } else { + /* Congestion noise */ + res = 2; + write(sndcmd[1], &res, sizeof(res)); + hookstate = 0; + } } snd_pcm_drop(alsa.icard); ast_mutex_unlock(&alsalock); diff --git a/channels/chan_oss_old.c b/channels/chan_oss_old.c index 1450703b4a..c1613d3b66 100755 --- a/channels/chan_oss_old.c +++ b/channels/chan_oss_old.c @@ -565,6 +565,7 @@ static int oss_hangup(struct ast_channel *c) /* Make congestion noise */ res = 2; write(sndcmd[1], &res, sizeof(res)); + hookstate = 0; } } return 0; -- GitLab