diff options
-rw-r--r-- | core/fpdfapi/parser/cpdf_data_avail.cpp | 18 | ||||
-rw-r--r-- | core/fpdfapi/parser/cpdf_data_avail.h | 4 |
2 files changed, 6 insertions, 16 deletions
diff --git a/core/fpdfapi/parser/cpdf_data_avail.cpp b/core/fpdfapi/parser/cpdf_data_avail.cpp index 719169af72..f1a5d0c143 100644 --- a/core/fpdfapi/parser/cpdf_data_avail.cpp +++ b/core/fpdfapi/parser/cpdf_data_avail.cpp @@ -80,9 +80,8 @@ CPDF_DataAvail::CPDF_DataAvail( FileAvail* pFileAvail, const RetainPtr<IFX_SeekableReadStream>& pFileRead, bool bSupportHintTable) - : m_pFileAvail(pFileAvail), - m_pFileRead( - pdfium::MakeRetain<CPDF_ReadValidator>(pFileRead, m_pFileAvail)), + : m_pFileRead( + pdfium::MakeRetain<CPDF_ReadValidator>(pFileRead, pFileAvail)), m_dwFileLen(m_pFileRead->GetSize()), m_bSupportHintTable(bSupportHintTable) {} @@ -201,7 +200,6 @@ bool CPDF_DataAvail::CheckAndLoadAllXref() { m_dwRootObjNum = m_parser.GetRootObjNum(); m_dwInfoObjNum = m_parser.GetInfoObjNum(); - m_pCurrentParser = &m_parser; m_docStatus = PDF_DATAAVAIL_ROOT; return true; } @@ -287,7 +285,6 @@ bool CPDF_DataAvail::PreparePageItem() { } m_PagesObjNum = pRef->GetRefObjNum(); - m_pCurrentParser = m_pDocument->GetParser(); m_docStatus = PDF_DATAAVAIL_PAGETREE; return true; } @@ -334,7 +331,7 @@ bool CPDF_DataAvail::CheckPage() { size_t iPages = m_PagesArray.size(); for (size_t i = 0; i < iPages; ++i) { std::unique_ptr<CPDF_Object> pPages = std::move(m_PagesArray[i]); - if (pPages && !GetPageKids(m_pCurrentParser, pPages.get())) { + if (pPages && !GetPageKids(pPages.get())) { m_PagesArray.clear(); m_docStatus = PDF_DATAAVAIL_ERROR; return false; @@ -347,12 +344,7 @@ bool CPDF_DataAvail::CheckPage() { return true; } -bool CPDF_DataAvail::GetPageKids(CPDF_Parser* pParser, CPDF_Object* pPages) { - if (!pParser) { - m_docStatus = PDF_DATAAVAIL_ERROR; - return false; - } - +bool CPDF_DataAvail::GetPageKids(CPDF_Object* pPages) { CPDF_Dictionary* pDict = pPages->GetDict(); CPDF_Object* pKids = pDict ? pDict->GetObjectFor("Kids") : nullptr; if (!pKids) @@ -393,7 +385,7 @@ bool CPDF_DataAvail::CheckPages() { return false; } - if (!GetPageKids(m_pCurrentParser, pPages.get())) { + if (!GetPageKids(pPages.get())) { m_docStatus = PDF_DATAAVAIL_ERROR; return false; } diff --git a/core/fpdfapi/parser/cpdf_data_avail.h b/core/fpdfapi/parser/cpdf_data_avail.h index 2a0705d33d..08bb77a23f 100644 --- a/core/fpdfapi/parser/cpdf_data_avail.h +++ b/core/fpdfapi/parser/cpdf_data_avail.h @@ -142,7 +142,7 @@ class CPDF_DataAvail final { CPDF_IndirectObjectHolder* pObjList = nullptr) const; std::unique_ptr<CPDF_Object> GetObject(uint32_t objnum, bool* pExistInFile); - bool GetPageKids(CPDF_Parser* pParser, CPDF_Object* pPages); + bool GetPageKids(CPDF_Object* pPages); bool PreparePageItem(); bool LoadPages(); bool CheckAndLoadAllXref(); @@ -164,7 +164,6 @@ class CPDF_DataAvail final { bool ValidatePage(uint32_t dwPage) const; CPDF_SyntaxParser* GetSyntaxParser() const; - FileAvail* const m_pFileAvail; RetainPtr<CPDF_ReadValidator> m_pFileRead; CPDF_Parser m_parser; std::unique_ptr<CPDF_Object> m_pRoot; @@ -192,7 +191,6 @@ class CPDF_DataAvail final { PageNode m_PageNode; std::set<uint32_t> m_pageMapCheckState; std::set<uint32_t> m_pagesLoadState; - std::set<uint32_t> m_SeenPrevPositions; std::unique_ptr<CPDF_HintTables> m_pHintTables; const bool m_bSupportHintTable; std::map<uint32_t, std::unique_ptr<CPDF_PageObjectAvail>> m_PagesObjAvail; |