diff options
Diffstat (limited to 'core/fpdfapi/parser/cpdf_array.cpp')
-rw-r--r-- | core/fpdfapi/parser/cpdf_array.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/core/fpdfapi/parser/cpdf_array.cpp b/core/fpdfapi/parser/cpdf_array.cpp index af9b544f0a..f8ec46acc9 100644 --- a/core/fpdfapi/parser/cpdf_array.cpp +++ b/core/fpdfapi/parser/cpdf_array.cpp @@ -155,8 +155,8 @@ void CPDF_Array::ConvertToIndirectObjectAt(size_t i, if (!pObj || pObj->IsReference()) return; - uint32_t dwObjNum = pHolder->AddIndirectObject(pObj); - m_Objects[i] = new CPDF_Reference(pHolder, dwObjNum); + CPDF_Object* pNew = pHolder->AddIndirectObject(pdfium::WrapUnique(pObj)); + m_Objects[i] = new CPDF_Reference(pHolder, pNew->GetObjNum()); } void CPDF_Array::SetAt(size_t i, CPDF_Object* pObj) { @@ -209,3 +209,9 @@ void CPDF_Array::AddReference(CPDF_IndirectObjectHolder* pDoc, uint32_t objnum) { Add(new CPDF_Reference(pDoc, objnum)); } + +void CPDF_Array::AddReference(CPDF_IndirectObjectHolder* pDoc, + CPDF_Object* pObj) { + ASSERT(!pObj->IsInline()); + Add(new CPDF_Reference(pDoc, pObj->GetObjNum())); +} |