From f57d819adabc11b18fba82cf94d0fb05682bd6ad Mon Sep 17 00:00:00 2001 From: Joshua Colp Date: Thu, 20 Sep 2012 19:16:59 +0000 Subject: [PATCH] Fix incorrect MeetME conference bridge reference count decrementing and sometimes premature destruction. When using the 'e' or 'E' option to MeetMe the configured conference bridges are loaded and examined to see if any are empty. If no conference bridges are empty the caller is prompted to enter the number of one. This operation left around a pointer to the last created conference bridge still containing participants. When the caller that was not able to find any empty conference bridge hung up this pointer was disposed of and the reference count of the conference bridge decremented. If there was only a single participant in the conference bridge it was ultimately destroyed prematurely. (closes issue AST-994) Reported by: John Bigelow ........ Merged revisions 373242 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 373245 from http://svn.asterisk.org/svn/asterisk/branches/10 ........ Merged revisions 373246 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@373247 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_meetme.c | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/app_meetme.c b/apps/app_meetme.c index daf9477457..1409f460f6 100644 --- a/apps/app_meetme.c +++ b/apps/app_meetme.c @@ -4454,6 +4454,7 @@ static int conf_exec(struct ast_channel *chan, const char *data) } } AST_LIST_UNLOCK(&confs); + cnf = NULL; if (!found) { /* At this point, we have a confno_tmp (static conference) that is empty */ if ((empty_no_pin && ast_strlen_zero(stringp)) || (!empty_no_pin)) {