From 545c63bb3f8c522d803caacab147398f9f00a6d9 Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Wed, 7 Oct 2015 12:43:10 -0500 Subject: [PATCH] FS-8317 #resolve [Playing stacked video files sometimes makes the floor layer unusable] --- src/mod/applications/mod_conference/conference_file.c | 5 +++++ src/mod/applications/mod_conference/conference_video.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/mod/applications/mod_conference/conference_file.c b/src/mod/applications/mod_conference/conference_file.c index 30e46757db..45a7913d3f 100644 --- a/src/mod/applications/mod_conference/conference_file.c +++ b/src/mod/applications/mod_conference/conference_file.c @@ -56,6 +56,11 @@ switch_status_t conference_file_close(conference_obj_t *conference, conference_f switch_event_add_header(event, SWITCH_STACK_BOTTOM, "milliseconds", "%ld", (long) node->fh.samples_in / (node->fh.native_rate / 1000)); switch_event_add_header(event, SWITCH_STACK_BOTTOM, "samples", "%ld", (long) node->fh.samples_in); + if (node->layer_id && node->layer_id > -1) { + if (node->canvas_id < 0) node->canvas_id = 0; + conference_video_canvas_del_fnode_layer(conference, node); + } + if (node->fh.params) { switch_event_merge(event, node->fh.params); } diff --git a/src/mod/applications/mod_conference/conference_video.c b/src/mod/applications/mod_conference/conference_video.c index 6935e61cd8..bf469577ca 100644 --- a/src/mod/applications/mod_conference/conference_video.c +++ b/src/mod/applications/mod_conference/conference_video.c @@ -1380,8 +1380,8 @@ void conference_video_canvas_set_fnode_layer(mcu_canvas_t *canvas, conference_fi if (canvas->layout_floor_id > -1) { idx = canvas->layout_floor_id; xlayer = &canvas->layers[idx]; - - if (xlayer->fnode) { + + if (xlayer->fnode && xlayer->fnode != fnode) { idx = -1; } }