summaryrefslogtreecommitdiff
path: root/apps/app_meetme.c
diff options
context:
space:
mode:
authorJoshua Colp <jcolp@digium.com>2012-09-20 19:16:59 +0000
committerJoshua Colp <jcolp@digium.com>2012-09-20 19:16:59 +0000
commitf57d819adabc11b18fba82cf94d0fb05682bd6ad (patch)
tree4af49d7dec1dc4ef9a5915b8f2e4216c1fdd6cbf /apps/app_meetme.c
parentbd4a2e4c9c88ebd2f8dfbda3f4d2e91256ca1811 (diff)
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
Diffstat (limited to 'apps/app_meetme.c')
-rw-r--r--apps/app_meetme.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/apps/app_meetme.c b/apps/app_meetme.c
index daf947745..1409f460f 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)) {