mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-25 15:36:42 +00:00
ext/ogg/gstoggdemux.c: Error out properly if we get an error from libogg while reading the
Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_read_chain): Error out properly if we get an error from libogg while reading the BOS page(s). Fixes crash parsing 'fuzzed' ogg file (#399340).
This commit is contained in:
parent
b8d04c8843
commit
c135f896e5
2 changed files with 16 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2007-01-23 Tim-Philipp Müller <tim at centricular dot net>
|
||||||
|
|
||||||
|
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_read_chain):
|
||||||
|
Error out properly if we get an error from libogg while reading the
|
||||||
|
BOS page(s). Fixes crash parsing 'fuzzed' ogg file (#399340).
|
||||||
|
|
||||||
2007-01-23 Tim-Philipp Müller <tim at centricular dot net>
|
2007-01-23 Tim-Philipp Müller <tim at centricular dot net>
|
||||||
|
|
||||||
* gst/playback/gstdecodebin2.c: (gst_decode_bin_finalize):
|
* gst/playback/gstdecodebin2.c: (gst_decode_bin_finalize):
|
||||||
|
|
|
@ -2269,7 +2269,16 @@ gst_ogg_demux_read_chain (GstOggDemux * ogg)
|
||||||
gint ret;
|
gint ret;
|
||||||
|
|
||||||
ret = gst_ogg_demux_get_next_page (ogg, &op, -1);
|
ret = gst_ogg_demux_get_next_page (ogg, &op, -1);
|
||||||
if (ret < 0 || !ogg_page_bos (&op))
|
if (ret < 0) {
|
||||||
|
GST_WARNING_OBJECT (ogg, "problem reading BOS page: ret=%d", ret);
|
||||||
|
if (chain) {
|
||||||
|
gst_ogg_chain_free (chain);
|
||||||
|
chain = NULL;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!ogg_page_bos (&op))
|
||||||
break;
|
break;
|
||||||
|
|
||||||
if (chain == NULL) {
|
if (chain == NULL) {
|
||||||
|
|
Loading…
Reference in a new issue