[FFmpeg-devel] [PATCH 3/3] avformat/mov: remove an always true condition
mypopy at gmail.com
mypopy at gmail.com
Tue Dec 8 10:43:45 EET 2020
On Sat, Oct 17, 2020 at 11:48 PM Zhao Zhili <quinkblack at foxmail.com> wrote:
>
>
>
> > On Sep 18, 2020, at 10:33 PM, Zhao Zhili <quinkblack at foxmail.com> wrote:
> >
> > From: Zhao Zhili <zhilizhao at tencent.com>
> >
> > ---
> > libavformat/mov.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/libavformat/mov.c b/libavformat/mov.c
> > index 9fc0db24d5..f99605c2cd 100644
> > --- a/libavformat/mov.c
> > +++ b/libavformat/mov.c
> > @@ -1475,7 +1475,7 @@ static int mov_read_mvhd(MOVContext *c, AVIOContext *pb, MOVAtom atom)
> > c->duration = (version == 1) ? avio_rb64(pb) : avio_rb32(pb); /* duration */
> > // set the AVFormatContext duration because the duration of individual tracks
> > // may be inaccurate
> > - if (c->time_scale > 0 && !c->trex_data)
> > + if (!c->trex_data)
> > c->fc->duration = av_rescale(c->duration, AV_TIME_BASE, c->time_scale);
> > avio_rb32(pb); /* preferred scale */
>
> Ping for review.
>
> The always true condition is not obvious in the patch. time_scale is checked a few lines before explicitly.
>
> 1471 if (c->time_scale <= 0) {
> 1472 av_log(c->fc, AV_LOG_ERROR, "Invalid mvhd time scale %d, defaulting to 1\n", c->time_scale);
> 1473 c->time_scale = 1;
> 1474 }
> 1475 av_log(c->fc, AV_LOG_TRACE, "time scale = %i\n", c->time_scale);
> 1476
> 1477 c->duration = (version == 1) ? avio_rb64(pb) : avio_rb32(pb); /* duration */
> 1478 // set the AVFormatContext duration because the duration of individual tracks
> 1479 // may be inaccurate
> 1480 if (c->time_scale > 0 && !c->trex_data)
> 1481 c->fc->duration = av_rescale(c->duration, AV_TIME_BASE, c->time_scale);
>
LGTM, will apply if no object
More information about the ffmpeg-devel
mailing list