From 8caaca13c0cb4a4f24154d178e1767e49ee4f08f Mon Sep 17 00:00:00 2001 From: Ryan Oldenburg Date: Wed, 25 May 2022 22:22:42 -0500 Subject: [PATCH] f --- src/pixie/fileformats/jpeg.nim | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/pixie/fileformats/jpeg.nim b/src/pixie/fileformats/jpeg.nim index 450aa9e..04139bd 100644 --- a/src/pixie/fileformats/jpeg.nim +++ b/src/pixie/fileformats/jpeg.nim @@ -540,8 +540,8 @@ proc getBits(state: var DecoderState, n: int): int = if state.bitsBuffered < n: state.fillBitBuffer() let k = lrot(state.bitBuffer, n) - state.bitBuffer = k and (not bitMasks[n]) result = (k and bitMasks[n]).int + state.bitBuffer = k and (not bitMasks[n]) state.bitsBuffered -= n proc getBitsAsSignedInt(state: var DecoderState, n: int): int = @@ -551,12 +551,12 @@ proc getBitsAsSignedInt(state: var DecoderState, n: int): int = failInvalid() if state.bitsBuffered < n: state.fillBitBuffer() - let sign = cast[int32](state.bitBuffer) shr 31 - var k = lrot(state.bitBuffer, n) + let + sign = cast[int32](state.bitBuffer) shr 31 # Sign is always in MSB + k = lrot(state.bitBuffer, n) + result = (k and bitMasks[n]).int + (biases[n] and (not sign)) state.bitBuffer = k and (not bitMasks[n]) - k = k and bitMasks[n] state.bitsBuffered -= n - result = k.int + (biases[n] and (not sign)) proc decodeRegularBlock( state: var DecoderState, component: int, data: var array[64, int16]