Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com> --- libavformat/flac_picture.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-)
diff --git a/libavformat/flac_picture.c b/libavformat/flac_picture.c index 3b69654ff6..0effbf04f6 100644 --- a/libavformat/flac_picture.c +++ b/libavformat/flac_picture.c @@ -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); -- 2.30.2 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".