mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 19:51:11 +00:00
qtdemux: Fix critical message on cenc sample grouping parsing
Inside qtdemux_parse_sbgp there is already a check to ensure the fragment group properties are not null but it is being hit in some examples and it is better to directly avoid the critical. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4576>
This commit is contained in:
parent
ed52e3a005
commit
bdff780fe9
1 changed files with 15 additions and 12 deletions
|
@ -4444,8 +4444,8 @@ qtdemux_parse_moof (GstQTDemux * qtdemux, const guint8 * buffer, guint length,
|
||||||
&& (stream->protection_scheme_type == FOURCC_cenc
|
&& (stream->protection_scheme_type == FOURCC_cenc
|
||||||
|| stream->protection_scheme_type == FOURCC_cbcs)) {
|
|| stream->protection_scheme_type == FOURCC_cbcs)) {
|
||||||
QtDemuxCencSampleSetInfo *info = stream->protection_scheme_info;
|
QtDemuxCencSampleSetInfo *info = stream->protection_scheme_info;
|
||||||
GNode *sbgp_node, *sgpd_node;
|
GNode *sgpd_node;
|
||||||
GstByteReader sgpd_data, sbgp_data;
|
GstByteReader sgpd_data;
|
||||||
|
|
||||||
if (info->fragment_group_properties) {
|
if (info->fragment_group_properties) {
|
||||||
g_ptr_array_free (info->fragment_group_properties, TRUE);
|
g_ptr_array_free (info->fragment_group_properties, TRUE);
|
||||||
|
@ -4471,17 +4471,20 @@ qtdemux_parse_moof (GstQTDemux * qtdemux, const guint8 * buffer, guint length,
|
||||||
FOURCC_sgpd, &sgpd_data);
|
FOURCC_sgpd, &sgpd_data);
|
||||||
}
|
}
|
||||||
|
|
||||||
sbgp_node = qtdemux_tree_get_child_by_type_full (traf_node, FOURCC_sbgp,
|
if (info->fragment_group_properties) {
|
||||||
&sbgp_data);
|
GstByteReader sbgp_data;
|
||||||
while (sbgp_node) {
|
GNode *sbgp_node = qtdemux_tree_get_child_by_type_full (traf_node,
|
||||||
if (qtdemux_parse_sbgp (qtdemux, stream, &sbgp_data, FOURCC_seig,
|
FOURCC_sbgp, &sbgp_data);
|
||||||
&info->sample_to_group_map, info->default_properties,
|
while (sbgp_node) {
|
||||||
info->track_group_properties,
|
if (qtdemux_parse_sbgp (qtdemux, stream, &sbgp_data, FOURCC_seig,
|
||||||
info->fragment_group_properties)) {
|
&info->sample_to_group_map, info->default_properties,
|
||||||
break;
|
info->track_group_properties,
|
||||||
|
info->fragment_group_properties)) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
sbgp_node = qtdemux_tree_get_sibling_by_type_full (sbgp_node,
|
||||||
|
FOURCC_sgpd, &sbgp_data);
|
||||||
}
|
}
|
||||||
sbgp_node = qtdemux_tree_get_sibling_by_type_full (sbgp_node,
|
|
||||||
FOURCC_sgpd, &sbgp_data);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue