| Index: core/fpdfapi/parser/cpdf_array.cpp
|
| diff --git a/core/fpdfapi/parser/cpdf_array.cpp b/core/fpdfapi/parser/cpdf_array.cpp
|
| index 807f62d7f3ff5018ad959af1c56b67a1024a0f26..db3b18be3ea78e109e7430baee490f68293a2bdd 100644
|
| --- a/core/fpdfapi/parser/cpdf_array.cpp
|
| +++ b/core/fpdfapi/parser/cpdf_array.cpp
|
| @@ -152,8 +152,9 @@ void CPDF_Array::ConvertToIndirectObjectAt(size_t i,
|
| if (!m_Objects[i] || m_Objects[i]->IsReference())
|
| return;
|
|
|
| - uint32_t dwObjNum = pHolder->AddIndirectObject(m_Objects[i].release());
|
| - m_Objects[i] = UniqueObject(new CPDF_Reference(pHolder, dwObjNum));
|
| + CPDF_Object* pUnowned = pHolder->AddIndirectObject(std::move(m_Objects[i]));
|
| + m_Objects[i] =
|
| + UniqueObject(new CPDF_Reference(pHolder, pUnowned->GetObjNum()));
|
| }
|
|
|
| void CPDF_Array::SetAt(size_t i, CPDF_Object* pObj) {
|
| @@ -205,3 +206,8 @@ void CPDF_Array::AddReference(CPDF_IndirectObjectHolder* pDoc,
|
| uint32_t objnum) {
|
| Add(new CPDF_Reference(pDoc, objnum));
|
| }
|
| +
|
| +void CPDF_Array::AddReference(CPDF_IndirectObjectHolder* pDoc,
|
| + const CPDF_Object* pObj) {
|
| + AddReference(pDoc, pObj->GetObjNum());
|
| +}
|
|
|