[FFmpeg-cvslog] avcodec/h274: Fix signed left shift

Michael Niedermayer git at videolan.org
Sat Oct 9 12:46:55 EEST 2021


ffmpeg | branch: master | Michael Niedermayer <michael at niedermayer.cc> | Mon Oct  4 23:52:52 2021 +0200| [98aec8c1b864e44636c0fabdaff3494d2051fda3] | committer: Michael Niedermayer

avcodec/h274: Fix signed left shift

Fixes: 39463/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_H264_fuzzer-5736517629247488

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=98aec8c1b864e44636c0fabdaff3494d2051fda3
---

 libavcodec/h274.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/h274.c b/libavcodec/h274.c
index 20401ba06b..a69f941142 100644
--- a/libavcodec/h274.c
+++ b/libavcodec/h274.c
@@ -145,8 +145,8 @@ static void deblock_8x8_c(int8_t *out, const int out_stride)
     for (int y = 0; y < 8; y++) {
         const int8_t l1 = out[-2], l0 = out[-1];
         const int8_t r0 = out[0], r1 = out[1];
-        out[0]  = (l0 + (r0 << 1) + r1) >> 2;
-        out[-1] = (r0 + (l0 << 1) + l1) >> 2;
+        out[0]  = (l0 + r0 * 2 + r1) >> 2;
+        out[-1] = (r0 + l0 * 2 + l1) >> 2;
         out += out_stride;
     }
 }



More information about the ffmpeg-cvslog mailing list