From cf6ccd16bbb7fb1d3eeb8554ac5ae20901372c7e Mon Sep 17 00:00:00 2001 From: seanbright Date: Sat, 29 Jan 2011 17:51:28 +0000 Subject: When we pass the S() or L() options to MeetMe, make sure that we honor C as well. Without this patch, if the user was kicked from the conference via the S() or L() mechanism, we would just hang up on them even if we also passed C (continue in dialplan when kicked). With this patch we honor the C flag in those cases. (closes issue #17317) Reported by: var git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.2@304773 f38db490-d61c-443f-a65b-d21fe96a405b --- apps/app_meetme.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/apps/app_meetme.c b/apps/app_meetme.c index 277bdac01..ab34b49a3 100644 --- a/apps/app_meetme.c +++ b/apps/app_meetme.c @@ -2649,6 +2649,11 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c } if (user->kicktime && (user->kicktime <= now.tv_sec)) { + if (confflags & CONFFLAG_KICK_CONTINUE) { + ret = 0; + } else { + ret = -1; + } break; } @@ -2719,6 +2724,11 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c now = ast_tvnow(); if (timeout && now.tv_sec >= timeout) { + if (confflags & CONFFLAG_KICK_CONTINUE) { + ret = 0; + } else { + ret = -1; + } break; } -- cgit v1.2.3