summaryrefslogtreecommitdiff
path: root/apps/confbridge
diff options
context:
space:
mode:
authorRichard Mudgett <rmudgett@digium.com>2012-12-07 00:00:39 +0000
committerRichard Mudgett <rmudgett@digium.com>2012-12-07 00:00:39 +0000
commita821774bad67b9020df06873169f90db36345100 (patch)
tree22de776a8af985cb072431ce9f1a3fc27fb920f7 /apps/confbridge
parent726e45b2ed9041847402349531dafdbaf8ea2d15 (diff)
confbridge: Fix some resource leaks on conference teardown.
* Made destroy_conference_bridge() destroy a missed ast_mutex_t and ast_cond_t. * Made join_conference_bridge() init the ast_mutex_t's and ast_cond_t so destroy_conference_bridge() can destroy them unconditionally. * Made join_conference_bridge() abort if the new conference could not be added to the conferences container. * Made leave_conference() discard any post-join actions if join_conference_bridge() had to abort early. * Made the join_conference_bridge() diagnostic messages better describe what happened. * Renamed leave_conference_bridge() to leave_conference() and made it only take a conference user pointer. The conference pointer was redundant. * Made conf_bridge_profile_copy() use struct copy instead of memcpy(). * No need to lock the conference in start_conf_record_thread() since all of the callers already have it locked. ........ Merged revisions 377354 from http://svn.asterisk.org/svn/asterisk/branches/10 ........ Merged revisions 377355 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@377356 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps/confbridge')
-rw-r--r--apps/confbridge/conf_config_parser.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/apps/confbridge/conf_config_parser.c b/apps/confbridge/conf_config_parser.c
index 39bf298b1..4868d3db9 100644
--- a/apps/confbridge/conf_config_parser.c
+++ b/apps/confbridge/conf_config_parser.c
@@ -1394,7 +1394,7 @@ const struct user_profile *conf_find_user_profile(struct ast_channel *chan, cons
void conf_bridge_profile_copy(struct bridge_profile *dst, struct bridge_profile *src)
{
- memcpy(dst, src, sizeof(*dst));
+ *dst = *src;
if (src->sounds) {
ao2_ref(src->sounds, +1);
}