From aebd065a6493deb8df93d59b54452def207170fa Mon Sep 17 00:00:00 2001 From: =?utf8?q?Christian=20K=C3=B6nig?= Date: Wed, 28 Aug 2013 18:55:56 +0200 Subject: [PATCH] radeon/uvd: fix MPEG2/4 ref frame index limit MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Otherwise the first few frames have an incorrect reference index. Signed-off-by: Christian König --- src/gallium/drivers/radeon/radeon_uvd.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeon/radeon_uvd.c b/src/gallium/drivers/radeon/radeon_uvd.c index f3652a64c9c..3e00977987b 100644 --- a/src/gallium/drivers/radeon/radeon_uvd.c +++ b/src/gallium/drivers/radeon/radeon_uvd.c @@ -493,8 +493,8 @@ uint8_t pquant /* extract the frame number from a referenced video buffer */ static uint32_t get_ref_pic_idx(struct ruvd_decoder *dec, struct pipe_video_buffer *ref) { - uint32_t min = dec->frame_number - NUM_MPEG2_REFS; - uint32_t max = dec->frame_number - 1; + uint32_t min = MAX2(dec->frame_number, NUM_MPEG2_REFS) - NUM_MPEG2_REFS; + uint32_t max = MAX2(dec->frame_number, 1) - 1; uintptr_t frame; /* seems to be the most sane fallback */ -- 2.30.2