diff options
author | jep <jep@2b0047a9-a6d8-0310-accf-f7200b2a168c> | 2013-09-03 13:11:38 +0000 |
---|---|---|
committer | jep <jep@2b0047a9-a6d8-0310-accf-f7200b2a168c> | 2013-09-03 13:11:38 +0000 |
commit | 40f404a371ed88c737df8966b4fc5216c4d635b5 (patch) | |
tree | 4470335d93ae5007187a2c8bd94e875dbd09db1c | |
parent | 0c5b6fe61e1728e3f89b80a6181ca136c2986d0f (diff) |
* 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
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | src/bitstream.c | 2 |
2 files changed, 6 insertions, 1 deletions
@@ -1,3 +1,8 @@ +2013-09-03 Josep Torra <josep@fluendo.com> + + * src/bitstream.c: (bs_seek_sync): + Ensure not to read outside our buffer memory. + 2013-09-02 Josep Torra <josep@fluendo.com> * 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) { |