diff options
author | Sergey Magidovich <mgsergio@mapswithme.com> | 2016-02-28 22:33:38 +0300 |
---|---|---|
committer | Sergey Yershov <yershov@corp.mail.ru> | 2016-03-23 16:49:24 +0300 |
commit | 4a3989ff23d90c112b50f690e7a2c2329aa54389 (patch) | |
tree | 6c4476e3d423686acbf55f180c39abb55561b929 /coding/mmap_reader.cpp | |
parent | 78fb143a7901288395d5cc70b0aa4e0b9ff707fc (diff) |
Platform::GetReader returns unique_ptr. Fix leaks.
Diffstat (limited to 'coding/mmap_reader.cpp')
-rw-r--r-- | coding/mmap_reader.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/coding/mmap_reader.cpp b/coding/mmap_reader.cpp index 4d0f677dbc..53478fba0c 100644 --- a/coding/mmap_reader.cpp +++ b/coding/mmap_reader.cpp @@ -79,10 +79,11 @@ void MmapReader::Read(uint64_t pos, void * p, size_t size) const memcpy(p, m_data->m_memory + m_offset + pos, size); } -MmapReader * MmapReader::CreateSubReader(uint64_t pos, uint64_t size) const +unique_ptr<Reader> MmapReader::CreateSubReader(uint64_t pos, uint64_t size) const { ASSERT_LESS_OR_EQUAL(pos + size, Size(), (pos, size)); - return new MmapReader(*this, m_offset + pos, size); + // Can't use make_unique with private constructor. + return unique_ptr<Reader>(new MmapReader(*this, m_offset + pos, size)); } uint8_t * MmapReader::Data() const |