[FFmpeg-cvslog] avcodec/setts_bsf: Check timebase
Michael Niedermayer
git at videolan.org
Thu Apr 1 12:49:49 EEST 2021
ffmpeg | branch: release/4.4 | Michael Niedermayer <michael at niedermayer.cc> | Thu Mar 4 13:06:22 2021 +0100| [8c99a06c5c9dbec6b91e4e4ba568ca51981a36b4] | committer: Michael Niedermayer
avcodec/setts_bsf: Check timebase
Fixes: Division by 0
Fixes: 30952/clusterfuzz-testcase-minimized-ffmpeg_BSF_SETTS_fuzzer-6601016202100736
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
(cherry picked from commit 7fc8ba9068abc4c4cb3fbca4a25b53710ec374b6)
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=8c99a06c5c9dbec6b91e4e4ba568ca51981a36b4
---
libavcodec/setts_bsf.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavcodec/setts_bsf.c b/libavcodec/setts_bsf.c
index 5b6b256915..2558e38f51 100644
--- a/libavcodec/setts_bsf.c
+++ b/libavcodec/setts_bsf.c
@@ -152,7 +152,7 @@ static int setts_filter(AVBSFContext *ctx, AVPacket *pkt)
s->var_values[VAR_PREV_OUTDTS] = s->prev_outdts;
s->var_values[VAR_STARTPTS] = s->start_pts;
s->var_values[VAR_STARTDTS] = s->start_dts;
- s->var_values[VAR_TB] = av_q2d(ctx->time_base_out);
+ s->var_values[VAR_TB] = ctx->time_base_out.den ? av_q2d(ctx->time_base_out) : 0;
s->var_values[VAR_SR] = ctx->par_in->sample_rate;
new_ts = llrint(av_expr_eval(s->ts_expr, s->var_values, NULL));
More information about the ffmpeg-cvslog
mailing list