From 40f404a371ed88c737df8966b4fc5216c4d635b5 Mon Sep 17 00:00:00 2001 From: jep Date: Tue, 3 Sep 2013 13:11:38 +0000 Subject: * src/bitstream.c: (bs_seek_sync): Ensure not to read outside our buffer memory. git-svn-id: https://core.fluendo.com/gstreamer/svn/trunk/gst-fluendo-mp3@2500 2b0047a9-a6d8-0310-accf-f7200b2a168c --- ChangeLog | 5 +++++ src/bitstream.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 38f072f..f419d59 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-09-03 Josep Torra + + * src/bitstream.c: (bs_seek_sync): + Ensure not to read outside our buffer memory. + 2013-09-02 Josep Torra * src/mp3-c.c: (III_huffman_decode): diff --git a/src/bitstream.c b/src/bitstream.c index 6b1df3a..ef17625 100644 --- a/src/bitstream.c +++ b/src/bitstream.c @@ -158,6 +158,7 @@ bs_seek_sync (Bit_stream_struc * bs) while (bs->read.cur_used < bs->read.size - 1) { last_byte = bs->read.cur_byte[0]; bs->read.cur_byte++; + bs->read.cur_used++; if (last_byte == 0xff && bs->read.cur_byte[0] >= 0xe0) { /* Found a sync word */ @@ -166,7 +167,6 @@ bs_seek_sync (Bit_stream_struc * bs) } } /* Update the tracked position in the reader */ - bs->read.cur_used += (bs->read.cur_byte - start_pos); bs->read.bitpos += BS_BYTE_SIZE * (bs->read.cur_byte - start_pos); if (res) { -- cgit v1.2.3