validate: Don't leak discoverer information
The various streaminfo were being overwritten without being unreffed first Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3390>
This commit is contained in:
parent
00133ebbe4
commit
3f95779c30
@ -735,17 +735,25 @@ gst_validate_media_descriptor_writer_new_discover (GstValidateRunner * runner,
|
|||||||
gst_validate_media_descriptor_writer_add_stream (writer, streaminfo);
|
gst_validate_media_descriptor_writer_add_stream (writer, streaminfo);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
GstDiscovererStreamInfo *nextinfo;
|
||||||
if (!GST_IS_DISCOVERER_AUDIO_INFO (info)
|
if (!GST_IS_DISCOVERER_AUDIO_INFO (info)
|
||||||
&& !GST_IS_DISCOVERER_AUDIO_INFO (info)
|
&& !GST_IS_DISCOVERER_VIDEO_INFO (info)) {
|
||||||
&& gst_discoverer_stream_info_get_next (streaminfo)) {
|
nextinfo = gst_discoverer_stream_info_get_next (streaminfo);
|
||||||
gst_validate_media_descriptor_get_file_node ((GstValidateMediaDescriptor
|
if (nextinfo) {
|
||||||
*) writer)->caps =
|
GstValidateMediaFileNode *fn =
|
||||||
gst_discoverer_stream_info_get_caps (streaminfo);
|
gst_validate_media_descriptor_get_file_node (
|
||||||
streaminfo = gst_discoverer_stream_info_get_next (streaminfo);
|
(GstValidateMediaDescriptor *) writer);
|
||||||
|
fn->caps = gst_discoverer_stream_info_get_caps (streaminfo);
|
||||||
|
gst_discoverer_stream_info_unref (streaminfo);
|
||||||
|
streaminfo = nextinfo;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
do {
|
do {
|
||||||
gst_validate_media_descriptor_writer_add_stream (writer, streaminfo);
|
gst_validate_media_descriptor_writer_add_stream (writer, streaminfo);
|
||||||
} while ((streaminfo = gst_discoverer_stream_info_get_next (streaminfo)));
|
nextinfo = gst_discoverer_stream_info_get_next (streaminfo);
|
||||||
|
gst_discoverer_stream_info_unref (streaminfo);
|
||||||
|
streaminfo = nextinfo;
|
||||||
|
} while (streaminfo);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
GST_VALIDATE_REPORT (writer, FILE_NO_STREAM_INFO,
|
GST_VALIDATE_REPORT (writer, FILE_NO_STREAM_INFO,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user