| Index: core/fpdfapi/parser/cpdf_dictionary.cpp
|
| diff --git a/core/fpdfapi/parser/cpdf_dictionary.cpp b/core/fpdfapi/parser/cpdf_dictionary.cpp
|
| index 435eee72487070495748855743b9449b769d4839..0f03947ebdb45819cd4b30515d2b9f2a7a953446 100644
|
| --- a/core/fpdfapi/parser/cpdf_dictionary.cpp
|
| +++ b/core/fpdfapi/parser/cpdf_dictionary.cpp
|
| @@ -188,8 +188,8 @@ void CPDF_Dictionary::ConvertToIndirectObjectFor(
|
| if (it == m_Map.end() || it->second->IsReference())
|
| return;
|
|
|
| - uint32_t objnum = pHolder->AddIndirectObject(it->second.release());
|
| - it->second = UniqueReference(new CPDF_Reference(pHolder, objnum));
|
| + CPDF_Object* pObj = pHolder->AddIndirectObject(std::move(it->second));
|
| + it->second = UniqueReference(new CPDF_Reference(pHolder, pObj->GetObjNum()));
|
| }
|
|
|
| void CPDF_Dictionary::RemoveFor(const CFX_ByteString& key) {
|
| @@ -229,6 +229,12 @@ void CPDF_Dictionary::SetReferenceFor(const CFX_ByteString& key,
|
| SetFor(key, new CPDF_Reference(pDoc, objnum));
|
| }
|
|
|
| +void CPDF_Dictionary::SetReferenceFor(const CFX_ByteString& key,
|
| + CPDF_IndirectObjectHolder* pDoc,
|
| + const CPDF_Object* pObj) {
|
| + SetReferenceFor(key, pDoc, pObj->GetObjNum());
|
| +}
|
| +
|
| void CPDF_Dictionary::SetNumberFor(const CFX_ByteString& key, FX_FLOAT f) {
|
| SetFor(key, new CPDF_Number(f));
|
| }
|
|
|