From 0d830c1e0db684d17f9b3c534dec8cecb17b674d Mon Sep 17 00:00:00 2001 From: tsepez Date: Mon, 7 Nov 2016 15:14:09 -0800 Subject: Hold trailers via unique_ptrs. Follow-up from ParseIndirectObject() CL. This will get cleaner once CPDF_Object::Clone itself returns unique_ptrs. Pack some bools together while we're at it. Review-Url: https://codereview.chromium.org/2479353002 --- core/fpdfapi/parser/cpdf_parser.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'core/fpdfapi/parser/cpdf_parser.h') diff --git a/core/fpdfapi/parser/cpdf_parser.h b/core/fpdfapi/parser/cpdf_parser.h index 007193b3ea..5e2cdea08d 100644 --- a/core/fpdfapi/parser/cpdf_parser.h +++ b/core/fpdfapi/parser/cpdf_parser.h @@ -49,7 +49,7 @@ class CPDF_Parser { void SetPassword(const FX_CHAR* password) { m_Password = password; } CFX_ByteString GetPassword() { return m_Password; } - CPDF_Dictionary* GetTrailer() const { return m_pTrailer; } + CPDF_Dictionary* GetTrailer() const { return m_pTrailer.get(); } FX_FILESIZE GetLastXRefOffset() const { return m_LastXRefOffset; } uint32_t GetPermissions() const; @@ -132,7 +132,7 @@ class CPDF_Parser { bool LoadAllCrossRefV4(FX_FILESIZE pos); bool LoadAllCrossRefV5(FX_FILESIZE pos); bool LoadCrossRefV5(FX_FILESIZE* pos, bool bMainXRef); - CPDF_Dictionary* LoadTrailerV4(); + std::unique_ptr LoadTrailerV4(); Error SetEncryptHandler(); void ReleaseEncryptHandler(); bool LoadLinearizedAllCrossRefV4(FX_FILESIZE pos, uint32_t dwObjCount); @@ -150,16 +150,16 @@ class CPDF_Parser { CPDF_Document* m_pDocument; // not owned bool m_bHasParsed; bool m_bOwnFileRead; + bool m_bXRefStream; + bool m_bVersionUpdated; int m_FileVersion; - CPDF_Dictionary* m_pTrailer; CPDF_Dictionary* m_pEncryptDict; FX_FILESIZE m_LastXRefOffset; - bool m_bXRefStream; std::unique_ptr m_pSecurityHandler; CFX_ByteString m_Password; std::set m_SortedOffset; - std::vector m_Trailers; - bool m_bVersionUpdated; + std::unique_ptr m_pTrailer; + std::vector> m_Trailers; std::unique_ptr m_pLinearized; uint32_t m_dwXrefStartObjNum; -- cgit v1.2.3