summaryrefslogtreecommitdiff
path: root/core/fpdfapi/parser/cpdf_syntax_parser.h
diff options
context:
space:
mode:
authorArtem Strygin <art-snake@yandex-team.ru>2017-09-01 18:52:30 +0300
committerChromium commit bot <commit-bot@chromium.org>2017-09-05 15:07:57 +0000
commitd2608a87173f00cb80830d56b52eeb588055ba3a (patch)
tree7cb97990ac1407f25c3f6415b346c7c049b649bc /core/fpdfapi/parser/cpdf_syntax_parser.h
parent088ca03f25fe1f6d75c0ff3b71e0ad3d018a5e0c (diff)
downloadpdfium-d2608a87173f00cb80830d56b52eeb588055ba3a.tar.xz
Move Parsing of indirect object logic into CPDF_SyntaxParser.
Change-Id: I5473d6db3e6fc247d52a83b34424958dc20387f4 Reviewed-on: https://pdfium-review.googlesource.com/12150 Reviewed-by: dsinclair <dsinclair@chromium.org> Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Diffstat (limited to 'core/fpdfapi/parser/cpdf_syntax_parser.h')
-rw-r--r--core/fpdfapi/parser/cpdf_syntax_parser.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/core/fpdfapi/parser/cpdf_syntax_parser.h b/core/fpdfapi/parser/cpdf_syntax_parser.h
index c95188acbe..88bbc5c9fa 100644
--- a/core/fpdfapi/parser/cpdf_syntax_parser.h
+++ b/core/fpdfapi/parser/cpdf_syntax_parser.h
@@ -23,6 +23,8 @@ class IFX_SeekableReadStream;
class CPDF_SyntaxParser {
public:
+ enum class ParseType { kStrict, kLoose };
+
CPDF_SyntaxParser();
explicit CPDF_SyntaxParser(const CFX_WeakPtr<CFX_ByteStringPool>& pPool);
~CPDF_SyntaxParser();
@@ -48,6 +50,12 @@ class CPDF_SyntaxParser {
uint32_t gennum,
bool bDecrypt);
+ std::unique_ptr<CPDF_Object> GetIndirectObject(
+ CPDF_IndirectObjectHolder* pObjList,
+ uint32_t objnum,
+ bool bDecrypt,
+ ParseType parse_type);
+
CFX_ByteString GetKeyword();
void ToNextLine();
void ToNextWord();
@@ -95,8 +103,6 @@ class CPDF_SyntaxParser {
static_cast<FX_FILESIZE>(m_BufOffset + m_BufSize) <= pos;
}
- enum class ParseType { kStrict, kLoose };
-
std::unique_ptr<CPDF_Object> GetObjectInternal(
CPDF_IndirectObjectHolder* pObjList,
uint32_t objnum,