mirror of https://git.ffmpeg.org/ffmpeg.git
avcodec/golomb: get_ur_golomb_jpegls: Fix reading huge k values
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit c720b9ce98
)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
10b77a3471
commit
8b95fc6d8d
|
@ -346,8 +346,16 @@ static inline int get_ur_golomb_jpegls(GetBitContext *gb, int k, int limit,
|
||||||
|
|
||||||
if (i < limit - 1) {
|
if (i < limit - 1) {
|
||||||
if (k) {
|
if (k) {
|
||||||
buf = SHOW_UBITS(re, gb, k);
|
if (k > MIN_CACHE_BITS - 1) {
|
||||||
LAST_SKIP_BITS(re, gb, k);
|
buf = SHOW_UBITS(re, gb, 16) << (k-16);
|
||||||
|
LAST_SKIP_BITS(re, gb, 16);
|
||||||
|
UPDATE_CACHE(re, gb);
|
||||||
|
buf |= SHOW_UBITS(re, gb, k-16);
|
||||||
|
LAST_SKIP_BITS(re, gb, k-16);
|
||||||
|
} else {
|
||||||
|
buf = SHOW_UBITS(re, gb, k);
|
||||||
|
LAST_SKIP_BITS(re, gb, k);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
buf = 0;
|
buf = 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue