summaryrefslogtreecommitdiff
path: root/core/fpdfapi/page/cpdf_docpagedata.cpp
diff options
context:
space:
mode:
authortsepez <tsepez@chromium.org>2016-10-13 15:56:53 -0700
committerCommit bot <commit-bot@chromium.org>2016-10-13 15:56:53 -0700
commit4e4d1a662b09d9ee1dc93dd8ee37694d3c4eb519 (patch)
treeef6c2b6e8915ac1463d7fb50f8275e3422d41506 /core/fpdfapi/page/cpdf_docpagedata.cpp
parent36bad2b022014ea7161fe888fec1191d2ba6b894 (diff)
downloadpdfium-4e4d1a662b09d9ee1dc93dd8ee37694d3c4eb519.tar.xz
Make CPDF_Image() constructors saner.chromium/2890
Introduce the UniqueDictionary typedef and friends, to allow moving to unique_ptrs before the Release() deleter issue is fully resolved. This will go away down the road. Review-Url: https://codereview.chromium.org/2420743002
Diffstat (limited to 'core/fpdfapi/page/cpdf_docpagedata.cpp')
-rw-r--r--core/fpdfapi/page/cpdf_docpagedata.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/core/fpdfapi/page/cpdf_docpagedata.cpp b/core/fpdfapi/page/cpdf_docpagedata.cpp
index 7a85e60da2..5f1f561ebb 100644
--- a/core/fpdfapi/page/cpdf_docpagedata.cpp
+++ b/core/fpdfapi/page/cpdf_docpagedata.cpp
@@ -397,14 +397,15 @@ CPDF_Image* CPDF_DocPageData::GetImage(CPDF_Object* pImageStream) {
if (!pImageStream)
return nullptr;
- const uint32_t dwImageObjNum = pImageStream->GetObjNum();
- auto it = m_ImageMap.find(dwImageObjNum);
+ ASSERT(!pImageStream->IsInline());
+ const uint32_t dwObjNum = pImageStream->GetObjNum();
+ auto it = m_ImageMap.find(dwObjNum);
if (it != m_ImageMap.end())
return it->second->AddRef();
- CPDF_CountedImage* pCountedImage = new CPDF_CountedImage(
- new CPDF_Image(m_pPDFDoc, pImageStream->AsStream(), false));
- m_ImageMap[dwImageObjNum] = pCountedImage;
+ CPDF_CountedImage* pCountedImage =
+ new CPDF_CountedImage(new CPDF_Image(m_pPDFDoc, dwObjNum));
+ m_ImageMap[dwObjNum] = pCountedImage;
return pCountedImage->AddRef();
}