On Sun, Oct 06, 2019 at 05:43:00AM +0000, Andreas Rheinhardt wrote: > Michael Niedermayer: > > Fixes: null pointer dereference > > Fixes: > > 17828/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-5645915116797952 > > > > Found-by: continuous fuzzing process > > https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg > > Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc> > > --- > > libavformat/subtitles.c | 7 ++++--- > > 1 file changed, 4 insertions(+), 3 deletions(-) > > > > diff --git a/libavformat/subtitles.c b/libavformat/subtitles.c > > index 659c99d1cf..ded1b910c5 100644 > > --- a/libavformat/subtitles.c > > +++ b/libavformat/subtitles.c > > @@ -194,9 +194,10 @@ void ff_subtitles_queue_finalize(void *log_ctx, > > FFDemuxSubtitlesQueue *q) > > { > > int i; > > > > - qsort(q->subs, q->nb_subs, sizeof(*q->subs), > > - q->sort == SUB_SORT_TS_POS ? cmp_pkt_sub_ts_pos > > - : cmp_pkt_sub_pos_ts); > > + if (q->nb_subs) > > + qsort(q->subs, q->nb_subs, sizeof(*q->subs), > > + q->sort == SUB_SORT_TS_POS ? cmp_pkt_sub_ts_pos > > + : cmp_pkt_sub_pos_ts); > > for (i = 0; i < q->nb_subs; i++) > > if (q->subs[i].duration < 0 && i < q->nb_subs - 1) > > q->subs[i].duration = q->subs[i + 1].pts - q->subs[i].pts; > > > Why not simply use > if (!q->nb_subs) > return; > After all, neither the loop nor drop_dups() does anything if there are > no subs. And you should mention ticket #8147.
ok will push with these changes thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Let us carefully observe those good qualities wherein our enemies excel us and endeavor to excel them, by avoiding what is faulty, and imitating what is excellent in them. -- Plutarch
signature.asc
Description: PGP signature
_______________________________________________ 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".