From: Anthony Minessale Date: Thu, 24 Aug 2017 16:11:59 +0000 (-0500) Subject: FS-10270 add additional patch X-Git-Tag: v1.6.20~14 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c3c408c6347ced91d131f8323ea3583523c3834a;p=thirdparty%2Ffreeswitch.git FS-10270 add additional patch --- diff --git a/src/mod/applications/mod_conference/conference_video.c b/src/mod/applications/mod_conference/conference_video.c index 640501dc03..03b7866c36 100644 --- a/src/mod/applications/mod_conference/conference_video.c +++ b/src/mod/applications/mod_conference/conference_video.c @@ -711,14 +711,13 @@ void conference_video_layer_set_logo(conference_member_t *member, mcu_layer_t *l { switch_mutex_lock(layer->canvas->mutex); - switch_img_free(&layer->logo_img); switch_img_free(&layer->logo_text_img); + switch_mutex_lock(member->flag_mutex); + if (member->video_logo) { - switch_mutex_lock(member->flag_mutex); switch_img_copy(member->video_logo, &layer->logo_img); - switch_mutex_unlock(member->flag_mutex); if (layer->logo_img) { layer->logo_pos = member->logo_pos; @@ -726,6 +725,8 @@ void conference_video_layer_set_logo(conference_member_t *member, mcu_layer_t *l } } + switch_mutex_unlock(member->flag_mutex); + switch_mutex_unlock(layer->canvas->mutex); } @@ -741,9 +742,10 @@ void conference_member_set_logo(conference_member_t *member, const char *path) switch_mutex_lock(member->flag_mutex); switch_img_free(&member->video_logo); - switch_mutex_unlock(member->flag_mutex); + if (!path || !strcasecmp(path, "clear")) { + switch_mutex_unlock(member->flag_mutex); return; } @@ -809,6 +811,8 @@ void conference_member_set_logo(conference_member_t *member, const char *path) switch_safe_free(dup); + switch_mutex_unlock(member->flag_mutex); + return; }