diff options
author | Tom Sepez <tsepez@chromium.org> | 2018-06-04 18:26:07 +0000 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2018-06-04 18:26:07 +0000 |
commit | f06ed6d3578fff9e1d2990e5757dc460e60e5dd3 (patch) | |
tree | 80a0b51c34053bcce961d43905afaef33b33c4da /core/fpdfapi/parser | |
parent | 168c763539e70bea450701470c47a8991f578336 (diff) | |
download | pdfium-f06ed6d3578fff9e1d2990e5757dc460e60e5dd3.tar.xz |
Revert "Make CPDF_Document cache CPDF_Pages"
This reverts commit f0d9d28a034fe3650c3c2d662090c1e8687ddb16.
Reason for revert: avoid parsing page.
Change-Id: Id3478f7e38f1cbe95d098e00158b1d7d9dc6f76e
Reviewed-on: https://pdfium-review.googlesource.com/33750
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Diffstat (limited to 'core/fpdfapi/parser')
-rw-r--r-- | core/fpdfapi/parser/cpdf_document.cpp | 13 | ||||
-rw-r--r-- | core/fpdfapi/parser/cpdf_document.h | 10 |
2 files changed, 1 insertions, 22 deletions
diff --git a/core/fpdfapi/parser/cpdf_document.cpp b/core/fpdfapi/parser/cpdf_document.cpp index 412f726eca..995d7edaf9 100644 --- a/core/fpdfapi/parser/cpdf_document.cpp +++ b/core/fpdfapi/parser/cpdf_document.cpp @@ -602,19 +602,6 @@ bool CPDF_Document::InsertNewPage(int iPage, CPDF_Dictionary* pPageDict) { return true; } -RetainPtr<CPDF_Page> CPDF_Document::GetOrCreatePDFPage( - CPDF_Dictionary* pPageDict) { - std::pair<uint32_t, uint32_t> key = {pPageDict->GetObjNum(), - pPageDict->GetGenNum()}; - if (m_PageMap[key]) - return RetainPtr<CPDF_Page>(m_PageMap[key].Get()); - - auto pPage = pdfium::MakeRetain<CPDF_Page>(this, pPageDict, true); - pPage->ParseContent(); - m_PageMap[key].Reset(pPage.Get()); - return pPage; -} - void CPDF_Document::DeletePage(int iPage) { CPDF_Dictionary* pPages = GetPagesDict(); if (!pPages) diff --git a/core/fpdfapi/parser/cpdf_document.h b/core/fpdfapi/parser/cpdf_document.h index c096e89e28..fe3f170114 100644 --- a/core/fpdfapi/parser/cpdf_document.h +++ b/core/fpdfapi/parser/cpdf_document.h @@ -8,7 +8,6 @@ #define CORE_FPDFAPI_PARSER_CPDF_DOCUMENT_H_ #include <functional> -#include <map> #include <memory> #include <set> #include <utility> @@ -67,7 +66,6 @@ class CPDF_Document : public CPDF_IndirectObjectHolder { const CPDF_Dictionary* GetInfo() const { return m_pInfoDict.Get(); } CPDF_Dictionary* GetInfo() { return m_pInfoDict.Get(); } - RetainPtr<CPDF_Page> GetOrCreatePDFPage(CPDF_Dictionary* pPageDict); void DeletePage(int iPage); int GetPageCount() const; bool IsPageLoaded(int iPage) const; @@ -171,13 +169,7 @@ class CPDF_Document : public CPDF_IndirectObjectHolder { std::unique_ptr<CPDF_DocRenderData> m_pDocRender; std::unique_ptr<JBig2_DocumentContext> m_pCodecContext; std::unique_ptr<CPDF_LinkList> m_pLinksContext; - - // Page number (index) to page's dict objnum. - std::vector<uint32_t> m_PageList; - - // Dict {objnum, gennum} to page mapping. - std::map<std::pair<uint32_t, uint32_t>, CPDF_Page::ObservedPtr> m_PageMap; - + std::vector<uint32_t> m_PageList; // Page number to page's dict objnum. std::unique_ptr<Extension> m_pExtension; }; |