diff options
author | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2020-02-13 01:49:08 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2020-02-13 01:49:08 +0000 |
commit | c193c8db96979860bd9be033ecd0f924e97f4dd9 (patch) | |
tree | 0a43214f465125675d3576042c737e74b9843256 | |
parent | fff99095193197fd2061881cdbbb341c37d131ea (diff) | |
parent | a534793136e7acfaed240eb776d9749907aa265c (diff) | |
download | flac-c193c8db96979860bd9be033ecd0f924e97f4dd9.tar.gz |
Merge "libFLAC/stream_decoder.c: fix integer overflow on corrupt file" am: 33446315ab am: e996d65597 am: a534793136
Change-Id: I4d8f5d19e88af19150051fc0119da4fa39871e4f
-rw-r--r-- | libFLAC/stream_decoder.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libFLAC/stream_decoder.c b/libFLAC/stream_decoder.c index d364b0ce..071398ae 100644 --- a/libFLAC/stream_decoder.c +++ b/libFLAC/stream_decoder.c @@ -1632,6 +1632,8 @@ FLAC__bool read_metadata_streaminfo_(FLAC__StreamDecoder *decoder, FLAC__bool is /* skip the rest of the block */ FLAC__ASSERT(used_bits % 8 == 0); + if (length < (used_bits / 8)) + return false; /* read_callback_ sets the state for us */ length -= (used_bits / 8); if(!FLAC__bitreader_skip_byte_block_aligned_no_crc(decoder->private_->input, length)) return false; /* read_callback_ sets the state for us */ |