diff options
author | Sean Bright <sean@malleable.com> | 2011-01-28 22:59:27 +0000 |
---|---|---|
committer | Sean Bright <sean@malleable.com> | 2011-01-28 22:59:27 +0000 |
commit | c5cf436a9299e51d838794d731ecab1874aa7109 (patch) | |
tree | 0c8ef58668fb7da55a1e3e13a4a16bbf706670e1 /apps | |
parent | 64dfc6e73571e46737652be219f0bb0d5b83b4ea (diff) |
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
Diffstat (limited to 'apps')
-rw-r--r-- | apps/app_meetme.c | 11 |
1 files changed, 10 insertions, 1 deletions
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; |