提交 28bd6e2e authored 作者: Anthony Minessale's avatar Anthony Minessale 提交者: Brian West

FS-8615 #resolve [Crash when quickly changing layouts and setting reservation ids.]

上级 f0d50271
......@@ -1583,10 +1583,9 @@ switch_status_t conference_api_sub_vid_res_id(conference_member_t *member, switc
} else {
member->video_reservation_id = switch_core_strdup(member->pool, text);
stream->write_function(stream, "+OK reservation_id %s\n", text);
conference_video_detach_video_layer(member);
}
conference_video_detach_video_layer(member);
return SWITCH_STATUS_SUCCESS;
}
......
......@@ -615,14 +615,19 @@ void conference_video_detach_video_layer(conference_member_t *member)
mcu_layer_t *layer = NULL;
mcu_canvas_t *canvas = NULL;
if (member->canvas_id < 0 || member->video_layer_id < 0) return;
if (member->canvas_id < 0) return;
if (!(canvas = conference_video_get_canvas_locked(member))) {
return;
}
switch_mutex_lock(canvas->mutex);
if (member->video_layer_id < 0) {
switch_mutex_unlock(canvas->mutex);
return;
}
layer = &canvas->layers[member->video_layer_id];
if (layer->geometry.audio_position) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论