From 19ccb5f6ec23d0cf76afdf3eefc1d93462c7e86c Mon Sep 17 00:00:00 2001 From: Edward Hervey Date: Fri, 17 Feb 2006 16:28:29 +0000 Subject: [PATCH] gst/qtdemux/qtdemux.c: Check that the size of the returned buffer is of the correct size because the parser assumes t... Original commit message from CVS: * 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. --- ChangeLog | 7 +++++++ gst/qtdemux/qtdemux.c | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/ChangeLog b/ChangeLog index 73154923ce..7c5ce4af81 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2006-02-17 Edward Hervey + + * 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 * configure.ac: diff --git a/gst/qtdemux/qtdemux.c b/gst/qtdemux/qtdemux.c index e15de786b5..fca86a348e 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;