]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-10270 add additional patch
authorAnthony Minessale <anthm@freeswitch.org>
Thu, 24 Aug 2017 16:11:59 +0000 (11:11 -0500)
committerAnthony Minessale <anthm@freeswitch.org>
Thu, 24 Aug 2017 16:12:12 +0000 (11:12 -0500)
src/mod/applications/mod_conference/conference_video.c

index 640501dc03a0d780a726517383e79723d393c448..03b7866c3630178824b37314ad0266c3dfae1388 100644 (file)
@@ -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;
 }