summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorSean Bright <sean@malleable.com>2009-01-15 15:33:18 +0000
committerSean Bright <sean@malleable.com>2009-01-15 15:33:18 +0000
commitfcb69e6f9d54cd10ae1ffd97dcaaae8e08dfb869 (patch)
tree833a0501ac02495a35374278867646706abdaa69 /apps
parent04352dac9614411c3f84507ef6bb02f5c72dbb3a (diff)
Add a missing unlock and properly handle the 'maxusers' setting on MeetMe
conferences. We were using the 'user number' field to compare against the maximum allowed users, which works assuming users with lower user numbers didn't leave the conference. (closes issue #14117) Reported by: sergedevorop Patches: 20090114__bug14117-2.diff.txt uploaded by seanbright (license 71) Tested by: sergedevorop git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@168705 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps')
-rw-r--r--apps/app_meetme.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/apps/app_meetme.c b/apps/app_meetme.c
index 0c490644e..f4ed6a87c 100644
--- a/apps/app_meetme.c
+++ b/apps/app_meetme.c
@@ -2187,10 +2187,12 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
user->user_no = AST_LIST_LAST(&conf->userlist)->user_no + 1;
if (rt_schedule && conf->maxusers)
- if (user->user_no > conf->maxusers) {
+ if (conf->users >= conf->maxusers) {
/* Sorry, but this confernce has reached the participant limit! */
if (!ast_streamfile(chan, "conf-full", chan->language))
ast_waitstream(chan, "");
+ ast_mutex_unlock(&conf->playlock);
+ user->user_no = 0;
goto outrun;
}