提交 6fb79c1a 编写于 作者: A Andreas Rheinhardt

avcodec/xiph: Return better error codes

Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
上级 b7d334e7
...@@ -35,7 +35,7 @@ int avpriv_split_xiph_headers(const uint8_t *extradata, int extradata_size, ...@@ -35,7 +35,7 @@ int avpriv_split_xiph_headers(const uint8_t *extradata, int extradata_size,
header_start[i] = extradata; header_start[i] = extradata;
extradata += header_len[i]; extradata += header_len[i];
if (overall_len > extradata_size - header_len[i]) if (overall_len > extradata_size - header_len[i])
return -1; return AVERROR_INVALIDDATA;
overall_len += header_len[i]; overall_len += header_len[i];
} }
} else if (extradata_size >= 3 && extradata_size < INT_MAX - 0x1ff && extradata[0] == 2) { } else if (extradata_size >= 3 && extradata_size < INT_MAX - 0x1ff && extradata[0] == 2) {
...@@ -50,7 +50,7 @@ int avpriv_split_xiph_headers(const uint8_t *extradata, int extradata_size, ...@@ -50,7 +50,7 @@ int avpriv_split_xiph_headers(const uint8_t *extradata, int extradata_size,
header_len[i] += *extradata; header_len[i] += *extradata;
overall_len += *extradata; overall_len += *extradata;
if (overall_len > extradata_size) if (overall_len > extradata_size)
return -1; return AVERROR_INVALIDDATA;
} }
header_len[2] = extradata_size - overall_len; header_len[2] = extradata_size - overall_len;
header_start[0] = extradata; header_start[0] = extradata;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册