@@ -150,19 +150,18 @@ int ff_flac_parse_picture(AVFormatContext *s, uint8_t **bufp, int buf_size,
data->data += bytestream2_tell(&g);
data->size = len + AV_INPUT_BUFFER_PADDING_SIZE;
} else {
- if (!(data = av_buffer_alloc(len + AV_INPUT_BUFFER_PADDING_SIZE))) {
- return AVERROR(ENOMEM);
- }
+ if (!(data = av_buffer_alloc(len + AV_INPUT_BUFFER_PADDING_SIZE)))
+ return AVERROR(ENOMEM);
- if (trunclen == 0) {
- bytestream2_get_bufferu(&g, data->data, len);
- } else {
- // If truncation was detected copy all data from block and read missing bytes
- // not included in the block size
- bytestream2_get_bufferu(&g, data->data, left);
- if (avio_read(s->pb, data->data + len - trunclen, trunclen) < trunclen)
- RETURN_ERROR(AVERROR_INVALIDDATA);
- }
+ if (trunclen == 0) {
+ bytestream2_get_bufferu(&g, data->data, len);
+ } else {
+ // If truncation was detected copy all data from block and
+ // read missing bytes not included in the block size.
+ bytestream2_get_bufferu(&g, data->data, left);
+ if (avio_read(s->pb, data->data + len - trunclen, trunclen) < trunclen)
+ RETURN_ERROR(AVERROR_INVALIDDATA);
+ }
}
memset(data->data + len, 0, AV_INPUT_BUFFER_PADDING_SIZE);
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> --- libavformat/flac_picture.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-)