mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
avformat/matroskadec: Use generic size check for signed integers
and drop the redundant checks contained in ebml_read_uint and ebml_read_sint. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
This commit is contained in:
parent
07d4056052
commit
e5ec131856
@ -882,9 +882,6 @@ static int ebml_read_uint(AVIOContext *pb, int size, uint64_t *num)
|
||||
{
|
||||
int n = 0;
|
||||
|
||||
if (size > 8)
|
||||
return AVERROR_INVALIDDATA;
|
||||
|
||||
/* big-endian ordering; build up number */
|
||||
*num = 0;
|
||||
while (n++ < size)
|
||||
@ -901,9 +898,6 @@ static int ebml_read_sint(AVIOContext *pb, int size, int64_t *num)
|
||||
{
|
||||
int n = 1;
|
||||
|
||||
if (size > 8)
|
||||
return AVERROR_INVALIDDATA;
|
||||
|
||||
if (size == 0) {
|
||||
*num = 0;
|
||||
} else {
|
||||
@ -1161,6 +1155,7 @@ static int ebml_parse_elem(MatroskaDemuxContext *matroska,
|
||||
{
|
||||
static const uint64_t max_lengths[EBML_TYPE_COUNT] = {
|
||||
[EBML_UINT] = 8,
|
||||
[EBML_SINT] = 8,
|
||||
[EBML_FLOAT] = 8,
|
||||
// max. 16 MB for strings
|
||||
[EBML_STR] = 0x1000000,
|
||||
|
Loading…
Reference in New Issue
Block a user