summaryrefslogtreecommitdiff
path: root/core/fpdfapi/parser
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2018-06-04 18:26:07 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-06-04 18:26:07 +0000
commitf06ed6d3578fff9e1d2990e5757dc460e60e5dd3 (patch)
tree80a0b51c34053bcce961d43905afaef33b33c4da /core/fpdfapi/parser
parent168c763539e70bea450701470c47a8991f578336 (diff)
downloadpdfium-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.cpp13
-rw-r--r--core/fpdfapi/parser/cpdf_document.h10
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;
};