avformat/utils: check for overflow before reallocating side data

This makes av_stream_add_side_data() consistent with av_packet_add_side_data().

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
pull/241/head
James Almer 8 years ago
parent 2343f23e4d
commit 0ffea35657
  1. 5
      libavformat/utils.c

@ -5121,7 +5121,10 @@ int av_stream_add_side_data(AVStream *st, enum AVPacketSideDataType type,
} }
} }
tmp = av_realloc_array(st->side_data, st->nb_side_data + 1, sizeof(*tmp)); if ((unsigned)st->nb_side_data + 1 >= INT_MAX / sizeof(*st->side_data))
return AVERROR(ERANGE);
tmp = av_realloc(st->side_data, st->nb_side_data + 1 * sizeof(*tmp));
if (!tmp) { if (!tmp) {
return AVERROR(ENOMEM); return AVERROR(ENOMEM);
} }

Loading…
Cancel
Save