equal
deleted
inserted
replaced
1 // LockedStream.cpp |
|
2 |
|
3 #include "StdAfx.h" |
|
4 |
|
5 #include "LockedStream.h" |
|
6 |
|
7 HRESULT CLockedInStream::Read(UInt64 startPos, void *data, UInt32 size, |
|
8 UInt32 *processedSize) |
|
9 { |
|
10 NWindows::NSynchronization::CCriticalSectionLock lock(_criticalSection); |
|
11 RINOK(_stream->Seek(startPos, STREAM_SEEK_SET, NULL)); |
|
12 return _stream->Read(data, size, processedSize); |
|
13 } |
|
14 |
|
15 STDMETHODIMP CLockedSequentialInStreamImp::Read(void *data, UInt32 size, UInt32 *processedSize) |
|
16 { |
|
17 UInt32 realProcessedSize = 0; |
|
18 HRESULT result = _lockedInStream->Read(_pos, data, size, &realProcessedSize); |
|
19 _pos += realProcessedSize; |
|
20 if (processedSize != NULL) |
|
21 *processedSize = realProcessedSize; |
|
22 return result; |
|
23 } |
|