diff mbox series

[FFmpeg-devel,2/4] avcodec/decode: ignore unsupported skip samples packet side data values

Message ID 20220201015648.2086-2-jamrial@gmail.com
State Accepted
Commit 22d6d2b4818f3b1b451d1b4c4dd3d484e3040261
Headers show
Series [FFmpeg-devel,1/4] avformat/demux: don't propagate unsupported skip samples packet side data values | expand

Checks

Context Check Description
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished
andriy/make_ppc success Make finished
andriy/make_fate_ppc success Make fate finished

Commit Message

James Almer Feb. 1, 2022, 1:56 a.m. UTC
Same as in the AV_FRAME_FLAG_DISCARD codepath, ensure avci->skip_samples is not
negative.

Signed-off-by: James Almer <jamrial@gmail.com>
---
 libavcodec/decode.c | 1 +
 1 file changed, 1 insertion(+)
diff mbox series

Patch

diff --git a/libavcodec/decode.c b/libavcodec/decode.c
index 0912f86a14..4f9b949926 100644
--- a/libavcodec/decode.c
+++ b/libavcodec/decode.c
@@ -366,6 +366,7 @@  static inline int decode_simple_internal(AVCodecContext *avctx, AVFrame *frame,
         side= av_packet_get_side_data(avci->last_pkt_props, AV_PKT_DATA_SKIP_SAMPLES, &side_size);
         if(side && side_size>=10) {
             avci->skip_samples = AV_RL32(side) * avci->skip_samples_multiplier;
+            avci->skip_samples = FFMAX(0, avci->skip_samples);
             discard_padding = AV_RL32(side + 4);
             av_log(avctx, AV_LOG_DEBUG, "skip %d / discard %d samples due to side data\n",
                    avci->skip_samples, (int)discard_padding);