diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | gst/qtdemux/qtdemux.c | 7 |
2 files changed, 14 insertions, 0 deletions
@@ -1,3 +1,10 @@ +2006-02-17 Edward Hervey <edward@fluendo.com> + + * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_state_header): + Check that the size of the returned buffer is of the correct size + because the parser assumes that. + Fixes #331543. + 2006-02-17 Jan Schmidt <thaytan@mad.scientist.com> * configure.ac: diff --git a/gst/qtdemux/qtdemux.c b/gst/qtdemux/qtdemux.c index e15de786..fca86a34 100644 --- a/gst/qtdemux/qtdemux.c +++ b/gst/qtdemux/qtdemux.c @@ -589,6 +589,13 @@ gst_qtdemux_loop_state_header (GstQTDemux * qtdemux) ret = gst_pad_pull_range (qtdemux->sinkpad, cur_offset, length, &moov); if (ret != GST_FLOW_OK) goto beach; + if (length != GST_BUFFER_SIZE (moov)) { + GST_WARNING_OBJECT (qtdemux, + "We got less than expected (received %d, wanted %d)", + GST_BUFFER_SIZE (moov), length); + ret = GST_FLOW_ERROR; + goto beach; + } cur_offset += length; qtdemux->offset += length; |