From 87223fa20bdc7d725ce336fa3ebb96a9cf5dd2a2 Mon Sep 17 00:00:00 2001 From: Tilghman Lesher Date: Wed, 22 Apr 2009 16:02:28 +0000 Subject: [PATCH] Merged revisions 189911 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ........ r189911 | tilghman | 2009-04-22 11:01:30 -0500 (Wed, 22 Apr 2009) | 7 lines Do not continue to receive DTMF, when the channel is hungup and about to be destroyed. (closes issue #14858) Reported by: barryf Patches: 20090421__bug14858.diff.txt uploaded by tilghman (license 14) Tested by: barryf ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@189912 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/chan_unistim.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/channels/chan_unistim.c b/channels/chan_unistim.c index b743159a7d..b25cf39ff1 100644 --- a/channels/chan_unistim.c +++ b/channels/chan_unistim.c @@ -2468,7 +2468,7 @@ static int unistim_do_senddigit(struct unistimsession *pte, char digit) struct ast_frame f = { 0, }; struct unistim_subchannel *sub; sub = pte->device->lines->subs[SUB_REAL]; - if (!sub->owner) { + if (!sub->owner || sub->alreadygone) { ast_log(LOG_WARNING, "Unable to find subchannel in dtmf senddigit\n"); return -1; } @@ -4218,8 +4218,8 @@ static int unistim_senddigit_end(struct ast_channel *ast, char digit, unsigned i sub = pte->device->lines->subs[SUB_REAL]; - if (!sub->owner) { - ast_log(LOG_WARNING, "Unable to find subchannel in dtmf senddigiti_end\n"); + if (!sub->owner || sub->alreadygone) { + ast_log(LOG_WARNING, "Unable to find subchannel in dtmf senddigit_end\n"); return -1; }