gst/matroska/matroska-demux.c: Allow zero sized blocks instead of returning GST_FLOW_OK. Such blocks are used for tex...

Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup_or_simpleblock):
Allow zero sized blocks instead of returning GST_FLOW_OK. Such blocks
are used for text/plain subtitles as a gap-filler in some files.
This commit is contained in:
Sebastian Dröge 2008-08-21 12:34:33 +00:00
parent 713e800026
commit 812954d1e9
2 changed files with 8 additions and 4 deletions

View file

@ -1,3 +1,10 @@
2008-08-21 Sebastian Dröge <sebastian.droege@collabora.co.uk>
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup_or_simpleblock):
Allow zero sized blocks instead of returning GST_FLOW_OK. Such blocks
are used for text/plain subtitles as a gap-filler in some files.
2008-08-21 Wim Taymans <wim.taymans@collabora.co.uk> 2008-08-21 Wim Taymans <wim.taymans@collabora.co.uk>
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_structure), * sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_structure),

View file

@ -3904,7 +3904,7 @@ gst_matroska_demux_parse_blockgroup_or_simpleblock (GstMatroskaDemux * demux,
/* fetch stream from num */ /* fetch stream from num */
stream_num = gst_matroska_demux_stream_from_num (demux, num); stream_num = gst_matroska_demux_stream_from_num (demux, num);
if (size <= 3 || stream_num < 0 || stream_num >= demux->num_streams) { if (size < 3 || stream_num < 0 || stream_num >= demux->num_streams) {
gst_buffer_unref (buf); gst_buffer_unref (buf);
buf = NULL; buf = NULL;
GST_WARNING_OBJECT (demux, "Invalid stream %d or size %u", stream_num, GST_WARNING_OBJECT (demux, "Invalid stream %d or size %u", stream_num,
@ -4135,9 +4135,6 @@ gst_matroska_demux_parse_blockgroup_or_simpleblock (GstMatroskaDemux * demux,
GstBuffer *sub; GstBuffer *sub;
GstClockTimeDiff diff; GstClockTimeDiff diff;
if (lace_size[n] == 0)
continue;
sub = gst_buffer_create_sub (buf, sub = gst_buffer_create_sub (buf,
GST_BUFFER_SIZE (buf) - size, lace_size[n]); GST_BUFFER_SIZE (buf) - size, lace_size[n]);