diff options
author | Thibaut Mattern <tmattern@users.sourceforge.net> | 2004-05-05 22:37:46 +0000 |
---|---|---|
committer | Thibaut Mattern <tmattern@users.sourceforge.net> | 2004-05-05 22:37:46 +0000 |
commit | bfe36df3f6502e3db75ccd33c08cdc7256dc63ec (patch) | |
tree | 8e8f84a998808257ef5c6c580e18c5667b4b876d | |
parent | 032b4a77cb67502ad9bf07ad954f748668c0369a (diff) | |
download | xine-lib-bfe36df3f6502e3db75ccd33c08cdc7256dc63ec.tar.gz xine-lib-bfe36df3f6502e3db75ccd33c08cdc7256dc63ec.tar.bz2 |
simple protection...
CVS patchset: 6490
CVS date: 2004/05/05 22:37:46
-rw-r--r-- | src/demuxers/demux_mpgaudio.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/demuxers/demux_mpgaudio.c b/src/demuxers/demux_mpgaudio.c index 7ff17bd7a..ecf08f193 100644 --- a/src/demuxers/demux_mpgaudio.c +++ b/src/demuxers/demux_mpgaudio.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: demux_mpgaudio.c,v 1.136 2004/05/04 22:26:13 tmattern Exp $ + * $Id: demux_mpgaudio.c,v 1.137 2004/05/05 22:37:46 tmattern Exp $ * * demultiplexer for mpeg audio (i.e. mp3) streams * @@ -370,6 +370,13 @@ static int mpg123_parse_frame_payload(demux_mpgaudio_t *this, buf = this->audio_fifo->buffer_pool_alloc(this->audio_fifo); + if (this->cur_frame.length > buf->max_size) { + xprintf(this->stream->xine, XINE_VERBOSITY_LOG, + "demux_mpgaudio: frame size is greater than fifo buffer size\n"); + buf->free_buffer(buf); + return 0; + } + /* the decoder needs the frame header */ memcpy(buf->mem, frame_header, 4); |