aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2017-06-20 14:38:34 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2017-07-19 15:26:37 +0200
commit5b8a97d000efe57b898d64c54b366b927eddd162 (patch)
treed0354a43def1933f6408a8a90c38ada52bd6262e
parentada21bca5551977ab00c5a799b20dbff544ac3f9 (diff)
downloadffmpeg-5b8a97d000efe57b898d64c54b366b927eddd162.tar.gz
avcodec/hevc_filter: Fix invalid shift
Fixes: runtime error: left shift of negative value -1 Fixes: 2299/clusterfuzz-testcase-minimized-4843509351710720 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit d7b3d5c3f2e2ff1994762b5e09c05fbc33790b5b) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/hevc_filter.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/hevc_filter.c b/libavcodec/hevc_filter.c
index 14e7c8dd50..b53f4cc721 100644
--- a/libavcodec/hevc_filter.c
+++ b/libavcodec/hevc_filter.c
@@ -470,7 +470,7 @@ static int get_pcm(HEVCContext *s, int x, int y)
#define TC_CALC(qp, bs) \
tctable[av_clip((qp) + DEFAULT_INTRA_TC_OFFSET * ((bs) - 1) + \
- (tc_offset >> 1 << 1), \
+ (tc_offset & -2), \
0, MAX_QP + DEFAULT_INTRA_TC_OFFSET)]
static void deblocking_filter_CTB(HEVCContext *s, int x0, int y0)