diff options
Diffstat (limited to 'src/libs/3rdparty/7zip/win/CPP/7zip/Archive/7z/7zSpecStream.cpp')
-rw-r--r-- | src/libs/3rdparty/7zip/win/CPP/7zip/Archive/7z/7zSpecStream.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/libs/3rdparty/7zip/win/CPP/7zip/Archive/7z/7zSpecStream.cpp b/src/libs/3rdparty/7zip/win/CPP/7zip/Archive/7z/7zSpecStream.cpp new file mode 100644 index 000000000..8e45d9875 --- /dev/null +++ b/src/libs/3rdparty/7zip/win/CPP/7zip/Archive/7z/7zSpecStream.cpp @@ -0,0 +1,22 @@ +// 7zSpecStream.cpp + +#include "StdAfx.h" + +#include "7zSpecStream.h" + +STDMETHODIMP CSequentialInStreamSizeCount2::Read(void *data, UInt32 size, UInt32 *processedSize) +{ + UInt32 realProcessedSize; + HRESULT result = _stream->Read(data, size, &realProcessedSize); + _size += realProcessedSize; + if (processedSize) + *processedSize = realProcessedSize; + return result; +} + +STDMETHODIMP CSequentialInStreamSizeCount2::GetSubStreamSize(UInt64 subStream, UInt64 *value) +{ + if (!_getSubStreamSize) + return E_NOTIMPL; + return _getSubStreamSize->GetSubStreamSize(subStream, value); +} |