Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(100)

Side by Side Diff: third_party/lzma/v4_65/files/CPP/7zip/Common/StreamObjects.cpp

Issue 624713003: Keep only base/extractor.[cc|h]. (Closed) Base URL: https://chromium.googlesource.com/external/omaha.git@master
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // StreamObjects.cpp
2
3 #include "StdAfx.h"
4
5 #include "StreamObjects.h"
6 #include "../../Common/Defs.h"
7
8
9 STDMETHODIMP CSequentialInStreamImp::Read(void *data, UInt32 size, UInt32 *proce ssedSize)
10 {
11 size_t rem = _size - _pos;
12 if (size < rem)
13 rem = (size_t)size;
14 memcpy(data, _dataPointer + _pos, rem);
15 _pos += rem;
16 if (processedSize != NULL)
17 *processedSize = (UInt32)rem;
18 return S_OK;
19 }
20
21
22 void CWriteBuffer::Write(const void *data, size_t size)
23 {
24 size_t newCapacity = _size + size;
25 _buffer.EnsureCapacity(newCapacity);
26 memcpy(_buffer + _size, data, size);
27 _size += size;
28 }
29
30 STDMETHODIMP CSequentialOutStreamImp::Write(const void *data, UInt32 size, UInt3 2 *processedSize)
31 {
32 _writeBuffer.Write(data, (size_t)size);
33 if(processedSize != NULL)
34 *processedSize = size;
35 return S_OK;
36 }
37
38 STDMETHODIMP CSequentialOutStreamImp2::Write(const void *data, UInt32 size, UInt 32 *processedSize)
39 {
40 size_t rem = _size - _pos;
41 if (size < rem)
42 rem = (size_t)size;
43 memcpy(_buffer + _pos, data, rem);
44 _pos += rem;
45 if (processedSize != NULL)
46 *processedSize = (UInt32)rem;
47 return (rem == size ? S_OK : E_FAIL);
48 }
49
50 STDMETHODIMP CSequentialInStreamSizeCount::Read(void *data, UInt32 size, UInt32 *processedSize)
51 {
52 UInt32 realProcessedSize;
53 HRESULT result = _stream->Read(data, size, &realProcessedSize);
54 _size += realProcessedSize;
55 if (processedSize != 0)
56 *processedSize = realProcessedSize;
57 return result;
58 }
59
60 STDMETHODIMP CSequentialOutStreamSizeCount::Write(const void *data, UInt32 size, UInt32 *processedSize)
61 {
62 UInt32 realProcessedSize;
63 HRESULT result = _stream->Write(data, size, &realProcessedSize);
64 _size += realProcessedSize;
65 if (processedSize != 0)
66 *processedSize = realProcessedSize;
67 return result;
68 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698