mirror of
https://github.com/containers/skopeo.git
synced 2025-09-23 10:59:25 +00:00
vendor github.com/containers/image/v5@v5.5.1
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
This commit is contained in:
19
vendor/github.com/klauspost/compress/zstd/fse_decoder.go
generated
vendored
19
vendor/github.com/klauspost/compress/zstd/fse_decoder.go
generated
vendored
@@ -55,7 +55,7 @@ func (s *fseDecoder) readNCount(b *byteReader, maxSymbol uint16) error {
|
||||
if b.remain() < 4 {
|
||||
return errors.New("input too small")
|
||||
}
|
||||
bitStream := b.Uint32()
|
||||
bitStream := b.Uint32NC()
|
||||
nbBits := uint((bitStream & 0xF) + minTablelog) // extract tableLog
|
||||
if nbBits > tablelogAbsoluteMax {
|
||||
println("Invalid tablelog:", nbBits)
|
||||
@@ -79,7 +79,8 @@ func (s *fseDecoder) readNCount(b *byteReader, maxSymbol uint16) error {
|
||||
n0 += 24
|
||||
if r := b.remain(); r > 5 {
|
||||
b.advance(2)
|
||||
bitStream = b.Uint32() >> bitCount
|
||||
// The check above should make sure we can read 32 bits
|
||||
bitStream = b.Uint32NC() >> bitCount
|
||||
} else {
|
||||
// end of bit stream
|
||||
bitStream >>= 16
|
||||
@@ -104,10 +105,11 @@ func (s *fseDecoder) readNCount(b *byteReader, maxSymbol uint16) error {
|
||||
charnum++
|
||||
}
|
||||
|
||||
if r := b.remain(); r >= 7 || r+int(bitCount>>3) >= 4 {
|
||||
if r := b.remain(); r >= 7 || r-int(bitCount>>3) >= 4 {
|
||||
b.advance(bitCount >> 3)
|
||||
bitCount &= 7
|
||||
bitStream = b.Uint32() >> bitCount
|
||||
// The check above should make sure we can read 32 bits
|
||||
bitStream = b.Uint32NC() >> bitCount
|
||||
} else {
|
||||
bitStream >>= 2
|
||||
}
|
||||
@@ -148,17 +150,16 @@ func (s *fseDecoder) readNCount(b *byteReader, maxSymbol uint16) error {
|
||||
threshold >>= 1
|
||||
}
|
||||
|
||||
//println("b.off:", b.off, "len:", len(b.b), "bc:", bitCount, "remain:", b.remain())
|
||||
if r := b.remain(); r >= 7 || r+int(bitCount>>3) >= 4 {
|
||||
if r := b.remain(); r >= 7 || r-int(bitCount>>3) >= 4 {
|
||||
b.advance(bitCount >> 3)
|
||||
bitCount &= 7
|
||||
// The check above should make sure we can read 32 bits
|
||||
bitStream = b.Uint32NC() >> (bitCount & 31)
|
||||
} else {
|
||||
bitCount -= (uint)(8 * (len(b.b) - 4 - b.off))
|
||||
b.off = len(b.b) - 4
|
||||
//println("b.off:", b.off, "len:", len(b.b), "bc:", bitCount, "iend", iend)
|
||||
bitStream = b.Uint32() >> (bitCount & 31)
|
||||
}
|
||||
bitStream = b.Uint32() >> (bitCount & 31)
|
||||
//printf("bitstream is now: 0b%b", bitStream)
|
||||
}
|
||||
s.symbolLen = charnum
|
||||
if s.symbolLen <= 1 {
|
||||
|
Reference in New Issue
Block a user