summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/lzma/CPP/7zip/Compress/BcjCoder.cpp
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/lzma/CPP/7zip/Compress/BcjCoder.cpp')
-rw-r--r--3rdparty/lzma/CPP/7zip/Compress/BcjCoder.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/3rdparty/lzma/CPP/7zip/Compress/BcjCoder.cpp b/3rdparty/lzma/CPP/7zip/Compress/BcjCoder.cpp
index 32aa1762cdd..00478747408 100644
--- a/3rdparty/lzma/CPP/7zip/Compress/BcjCoder.cpp
+++ b/3rdparty/lzma/CPP/7zip/Compress/BcjCoder.cpp
@@ -7,17 +7,17 @@
namespace NCompress {
namespace NBcj {
-STDMETHODIMP CCoder::Init()
+Z7_COM7F_IMF(CCoder2::Init())
{
- _bufferPos = 0;
- x86_Convert_Init(_prevMask);
+ _pc = 0;
+ _state = Z7_BRANCH_CONV_ST_X86_STATE_INIT_VAL;
return S_OK;
}
-STDMETHODIMP_(UInt32) CCoder::Filter(Byte *data, UInt32 size)
+Z7_COM7F_IMF2(UInt32, CCoder2::Filter(Byte *data, UInt32 size))
{
- UInt32 processed = (UInt32)::x86_Convert(data, size, _bufferPos, &_prevMask, _encode);
- _bufferPos += processed;
+ const UInt32 processed = (UInt32)(size_t)(_convFunc(data, size, _pc, &_state) - data);
+ _pc += processed;
return processed;
}