ffprobe: fix consistency checks in parse_read_intervals()

Move array size assert after the count increment, and avoid strchr() NULL
dereference on p.

Should fix FFmpeg coverity issue #1108581.
This commit is contained in:
Stefano Sabatini 2013-10-21 13:33:06 +02:00
parent 09ba986cae
commit ddaf33f5bb

View File

@ -2460,8 +2460,11 @@ static int parse_read_intervals(const char *intervals_spec)
/* parse intervals */
p = spec;
for (i = 0; i < n; i++) {
char *next = strchr(p, ',');
for (i = 0; p; i++) {
char *next;
av_assert0(i < read_intervals_nb);
next = strchr(p, ',');
if (next)
*next++ = 0;
@ -2475,7 +2478,6 @@ static int parse_read_intervals(const char *intervals_spec)
av_log(NULL, AV_LOG_VERBOSE, "Parsed log interval ");
log_read_interval(&read_intervals[i], NULL, AV_LOG_VERBOSE);
p = next;
av_assert0(i <= read_intervals_nb);
}
av_assert0(i == read_intervals_nb);