diff options
Diffstat (limited to 'video')
-rw-r--r-- | video/bink_decoder.cpp | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/video/bink_decoder.cpp b/video/bink_decoder.cpp index c5dc5f280b..884ca69f17 100644 --- a/video/bink_decoder.cpp +++ b/video/bink_decoder.cpp @@ -717,15 +717,15 @@ void BinkDecoder::initBundles() { for (int i = 0; i < 2; i++) { int width = MAX<uint32>(cw[i], 8); - _bundles[kSourceBlockTypes ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; - _bundles[kSourceSubBlockTypes].countLengths[i] = Common::intLog2((width >> 4) + 511) + 1; - _bundles[kSourceColors ].countLengths[i] = Common::intLog2((cbw[i] )*64 + 511) + 1; - _bundles[kSourceIntraDC ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; - _bundles[kSourceInterDC ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; - _bundles[kSourceXOff ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; - _bundles[kSourceYOff ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; - _bundles[kSourcePattern ].countLengths[i] = Common::intLog2((cbw[i] << 3) + 511) + 1; - _bundles[kSourceRun ].countLengths[i] = Common::intLog2((cbw[i] )*48 + 511) + 1; + _bundles[kSourceBlockTypes ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourceSubBlockTypes].countLengths[i] = Common::intLog2(((width + 7) >> 4) + 511) + 1; + _bundles[kSourceColors ].countLengths[i] = Common::intLog2((cbw[i]) * 64 + 511) + 1; + _bundles[kSourceIntraDC ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourceInterDC ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourceXOff ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourceYOff ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourcePattern ].countLengths[i] = Common::intLog2((cbw[i] << 3) + 511) + 1; + _bundles[kSourceRun ].countLengths[i] = Common::intLog2((cbw[i]) * 48 + 511) + 1; } } |