diff options
author | Michael Niedermayer | 2019-10-01 00:43:03 +0200 |
---|---|---|
committer | Michael Niedermayer | 2019-12-31 19:51:57 +0100 |
commit | bc171139547465d312a98db5fe7829627ea8a2d9 (patch) | |
tree | e6d97931662fa845930c18ff385c33608e296556 | |
parent | ddb35d510eac5c4574b3fe227ab39bc3cf71d459 (diff) |
avcodec/dstdec: Use get_ur_golomb_jpegls()
Fixes: shift exponent -4 is negative
Fixes: 17793/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_DST_fuzzer-5766088435957760
Fixes: 18989/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_DST_fuzzer-5175008116867072
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 a76690c02b4fd12d7fac6f753af8bad72c82d55c)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | libavcodec/dstdec.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/dstdec.c b/libavcodec/dstdec.c index 3d544784db..7160f47515 100644 --- a/libavcodec/dstdec.c +++ b/libavcodec/dstdec.c @@ -120,7 +120,7 @@ static int read_map(GetBitContext *gb, Table *t, unsigned int map[DST_MAX_CHANNE static av_always_inline int get_sr_golomb_dst(GetBitContext *gb, unsigned int k) { - int v = get_ur_golomb(gb, k, get_bits_left(gb), 0); + int v = get_ur_golomb_jpegls(gb, k, get_bits_left(gb), 0); if (v && get_bits1(gb)) v = -v; return v; |