From d5c15ebeaf1914ea5e3e0599d4316d7c4cf74434 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Fri, 10 Jan 2014 21:32:05 +0100 Subject: hevc: Fix modulo operations Keep qp fields within the range. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Luca Barbato --- libavcodec/hevc_filter.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'libavcodec/hevc_filter.c') diff --git a/libavcodec/hevc_filter.c b/libavcodec/hevc_filter.c index bb1e360dd4..f3c655416a 100644 --- a/libavcodec/hevc_filter.c +++ b/libavcodec/hevc_filter.c @@ -158,8 +158,8 @@ void ff_hevc_set_qPy(HEVCContext *s, int xC, int yC, if (s->HEVClc.tu.cu_qp_delta != 0) { int off = s->sps->qp_bd_offset; - s->HEVClc.qp_y = ((qp_y + s->HEVClc.tu.cu_qp_delta + 52 + 2 * off) % - (52 + off)) - off; + s->HEVClc.qp_y = FFUMOD(qp_y + s->HEVClc.tu.cu_qp_delta + 52 + 2 * off, + 52 + off) - off; } else s->HEVClc.qp_y = qp_y; } -- cgit v1.2.3