diff options
author | dsinclair <dsinclair@chromium.org> | 2016-08-17 12:45:26 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-08-17 12:45:26 -0700 |
commit | 260f5fbf3553a96fa49b029cc050220039c30e2a (patch) | |
tree | bd2cb6ee2909cb33f0b78969086ec3aaf83e548a /core/fpdfapi/fpdf_parser/cpdf_data_avail.cpp | |
parent | 70ba38a9a1af0240529a96904dfdb8868b868719 (diff) | |
download | pdfium-260f5fbf3553a96fa49b029cc050220039c30e2a.tar.xz |
Move parser pointer to CPDF_Document
The CPDF_IndirectObjectHolder has two subclasses, CPDF_Document and
CFDF_Document. The CPDF document requires the parser and the CFDF document
does not. This cl moves the parser pointer up to CPDF_Document.
Review-Url: https://codereview.chromium.org/2253723002
Diffstat (limited to 'core/fpdfapi/fpdf_parser/cpdf_data_avail.cpp')
-rw-r--r-- | core/fpdfapi/fpdf_parser/cpdf_data_avail.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/core/fpdfapi/fpdf_parser/cpdf_data_avail.cpp b/core/fpdfapi/fpdf_parser/cpdf_data_avail.cpp index 94795fd60e..58b69257ad 100644 --- a/core/fpdfapi/fpdf_parser/cpdf_data_avail.cpp +++ b/core/fpdfapi/fpdf_parser/cpdf_data_avail.cpp @@ -176,7 +176,7 @@ FX_BOOL CPDF_DataAvail::IsObjectsAvail( } else if (!pdfium::ContainsKey(m_ObjectSet, dwNum)) { m_ObjectSet.insert(dwNum); CPDF_Object* pReferred = - m_pDocument->GetIndirectObject(pRef->GetRefObjNum()); + m_pDocument->GetOrParseIndirectObject(pRef->GetRefObjNum()); if (pReferred) new_obj_array.Add(pReferred); } @@ -1788,8 +1788,10 @@ CPDF_Dictionary* CPDF_DataAvail::GetPage(int index) { if (!pPageDict) return nullptr; - if (!m_pDocument->InsertIndirectObject(dwObjNum, pPageDict)) + if (!m_pDocument->ReplaceIndirectObjectIfHigherGeneration(dwObjNum, + pPageDict)) { return nullptr; + } return pPageDict->GetDict(); } } |