lavc/hevc: check framerate num/den to be strictly positive

Rather than just != 0. These values are read as uint32 and can become
negative when cast to int.

(cherry picked from commit eec1a7a6bb)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 9cadadb9a1)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
release/6.1
Anton Khirnov 4 months ago
parent f749aaf108
commit 86c595cc1b
  1. 2
      libavcodec/hevc_parser.c
  2. 2
      libavcodec/hevcdec.c

@ -105,7 +105,7 @@ static int hevc_parse_slice_header(AVCodecParserContext *s, H2645NAL *nal,
den = ps->sps->vui.vui_time_scale;
}
if (num != 0 && den != 0)
if (num > 0 && den > 0)
av_reduce(&avctx->framerate.den, &avctx->framerate.num,
num, den, 1 << 30);

@ -372,7 +372,7 @@ static void export_stream_params(HEVCContext *s, const HEVCSPS *sps)
den = sps->vui.vui_time_scale;
}
if (num != 0 && den != 0)
if (num > 0 && den > 0)
av_reduce(&avctx->framerate.den, &avctx->framerate.num,
num, den, 1 << 30);
}

Loading…
Cancel
Save