Index: core/include/fpdfapi/fpdf_parser.h |
diff --git a/core/include/fpdfapi/fpdf_parser.h b/core/include/fpdfapi/fpdf_parser.h |
index ffc29ef3ae5eab3bb7279f3ea1ad5828a3acd128..6620a71e2e6b371387fa14e01db10107b5b5b8fd 100644 |
--- a/core/include/fpdfapi/fpdf_parser.h |
+++ b/core/include/fpdfapi/fpdf_parser.h |
@@ -396,6 +396,14 @@ class CPDF_Parser { |
FX_DWORD GetFirstPageNo() const { return m_dwFirstPageNo; } |
protected: |
+ struct ObjectInfo { |
+ ObjectInfo() : pos(0), type(0), gennum(0) {} |
+ |
+ FX_FILESIZE pos; |
+ uint8_t type; |
+ uint16_t gennum; |
+ }; |
+ |
void CloseParser(); |
CPDF_Object* ParseDirect(CPDF_Object* pObj); |
FX_BOOL LoadAllCrossRefV4(FX_FILESIZE pos); |
@@ -412,7 +420,6 @@ class CPDF_Parser { |
Error LoadLinearizedMainXRefTable(); |
CPDF_StreamAcc* GetObjectStream(FX_DWORD number); |
FX_BOOL IsLinearizedFile(IFX_FileRead* pFileAccess, FX_DWORD offset); |
- bool FindPosInOffsets(FX_FILESIZE pos) const; |
void SetEncryptDictionary(CPDF_Dictionary* pDict); |
void ShrinkObjectMap(FX_DWORD size); |
@@ -428,17 +435,8 @@ class CPDF_Parser { |
CFX_ByteString m_bsRecipient; |
CFX_ByteString m_FilePath; |
CFX_ByteString m_Password; |
- |
- struct ObjectInfo { |
- ObjectInfo() : pos(0), type(0), gennum(0) {} |
- |
- FX_FILESIZE pos; |
- uint8_t type; |
- uint16_t gennum; |
- }; |
std::map<FX_DWORD, ObjectInfo> m_ObjectInfo; |
- |
- CFX_FileSizeArray m_SortedOffset; |
+ std::set<FX_FILESIZE> m_SortedOffset; |
CFX_ArrayTemplate<CPDF_Dictionary*> m_Trailers; |
FX_BOOL m_bVersionUpdated; |
CPDF_Object* m_pLinearized; |