Index: core/fpdfapi/parser/cpdf_document.cpp |
diff --git a/core/fpdfapi/parser/cpdf_document.cpp b/core/fpdfapi/parser/cpdf_document.cpp |
index 8e181de97cf54a94010c3ff88c9e0b360cf80fa7..d9ffc0b28a46ee3c51dd641a52922d6056ba1d55 100644 |
--- a/core/fpdfapi/parser/cpdf_document.cpp |
+++ b/core/fpdfapi/parser/cpdf_document.cpp |
@@ -17,6 +17,7 @@ |
#include "core/fpdfapi/page/pageint.h" |
#include "core/fpdfapi/parser/cpdf_array.h" |
#include "core/fpdfapi/parser/cpdf_dictionary.h" |
+#include "core/fpdfapi/parser/cpdf_linearized.h" |
#include "core/fpdfapi/parser/cpdf_number.h" |
#include "core/fpdfapi/parser/cpdf_parser.h" |
#include "core/fpdfapi/parser/cpdf_reference.h" |
@@ -378,23 +379,13 @@ void CPDF_Document::LoadDoc() { |
m_PageList.SetSize(RetrievePageCount()); |
} |
-void CPDF_Document::LoadLinearizedDoc(CPDF_Dictionary* pLinearizationParams) { |
+void CPDF_Document::LoadLinearizedDoc( |
+ const CPDF_Linearized* pLinearizationParams) { |
m_bLinearized = true; |
LoadDocInternal(); |
- |
- uint32_t dwPageCount = 0; |
- CPDF_Object* pCount = pLinearizationParams->GetObjectFor("N"); |
- if (ToNumber(pCount)) |
- dwPageCount = pCount->GetInteger(); |
- m_PageList.SetSize(dwPageCount); |
- |
- CPDF_Object* pNo = pLinearizationParams->GetObjectFor("P"); |
- if (ToNumber(pNo)) |
- m_iFirstPageNo = pNo->GetInteger(); |
- |
- CPDF_Object* pObjNum = pLinearizationParams->GetObjectFor("O"); |
- if (ToNumber(pObjNum)) |
- m_dwFirstPageObjNum = pObjNum->GetInteger(); |
+ m_PageList.SetSize(pLinearizationParams->GetPageCount()); |
+ m_iFirstPageNo = pLinearizationParams->GetFirstPageNo(); |
+ m_dwFirstPageObjNum = pLinearizationParams->GetFirstPageObjNum(); |
} |
void CPDF_Document::LoadPages() { |