From c5cf436a9299e51d838794d731ecab1874aa7109 Mon Sep 17 00:00:00 2001 From: Sean Bright Date: Fri, 28 Jan 2011 22:59:27 +0000 Subject: Merged revisions 304683 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.8 ................ r304683 | seanbright | 2011-01-28 17:54:23 -0500 (Fri, 28 Jan 2011) | 16 lines Merged revisions 304659,304682 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.6.2 ........ r304659 | seanbright | 2011-01-28 16:22:09 -0500 (Fri, 28 Jan 2011) | 5 lines Don't leak references if we can't create a pseudo channel for mixing in MeetMe. If there was a problem allocating a pseudo channel when building our meetme, we weren't destroying our user container or destroying the mutexes that we created. ........ r304682 | seanbright | 2011-01-28 17:38:05 -0500 (Fri, 28 Jan 2011) | 2 lines Revert part of the previous commit that snuck in. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@304684 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_meetme.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'apps') diff --git a/apps/app_meetme.c b/apps/app_meetme.c index 561ac46e8..5910403b3 100644 --- a/apps/app_meetme.c +++ b/apps/app_meetme.c @@ -1231,6 +1231,11 @@ static struct ast_conference *build_conf(const char *confno, const char *pin, ast_log(LOG_WARNING, "Unable to open DAHDI pseudo device\n"); if (cnf->fd >= 0) close(cnf->fd); + ao2_ref(cnf->usercontainer, -1); + ast_mutex_destroy(&cnf->playlock); + ast_mutex_destroy(&cnf->listenlock); + ast_mutex_destroy(&cnf->recordthreadlock); + ast_mutex_destroy(&cnf->announcethreadlock); ast_free(cnf); cnf = NULL; goto cnfout; @@ -1256,7 +1261,11 @@ static struct ast_conference *build_conf(const char *confno, const char *pin, ast_hangup(cnf->chan); else close(cnf->fd); - + ao2_ref(cnf->usercontainer, -1); + ast_mutex_destroy(&cnf->playlock); + ast_mutex_destroy(&cnf->listenlock); + ast_mutex_destroy(&cnf->recordthreadlock); + ast_mutex_destroy(&cnf->announcethreadlock); ast_free(cnf); cnf = NULL; goto cnfout; -- cgit v1.2.3