diff options
author | Artem Strygin <art-snake@yandex-team.ru> | 2017-10-02 19:19:28 +0300 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-10-02 16:29:30 +0000 |
commit | d8169d7607b5084cdeceee3eaffca0ab16d2c14d (patch) | |
tree | 7741388e44b50f8a330f4724fa5ce29d6a0097bf /core/fpdfapi/parser/cpdf_data_avail.cpp | |
parent | 73784e81928a664169f0ae013707fdfb0e82e70d (diff) | |
download | pdfium-d8169d7607b5084cdeceee3eaffca0ab16d2c14d.tar.xz |
Implement CPDF_CryptoHandler::DecryptObject
Decryption logic has been extracted from CPDF_SyntaxParser::GetObjectBody
into CPDF_CryptoHandler::DecryptObject
Performance comparison results:
https://pdfium-review.googlesource.com/c/pdfium/+/12970
Change-Id: Iaeaed56b7f96166bbbcf6db162192d2ba9af4698
Reviewed-on: https://pdfium-review.googlesource.com/12971
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'core/fpdfapi/parser/cpdf_data_avail.cpp')
-rw-r--r-- | core/fpdfapi/parser/cpdf_data_avail.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/core/fpdfapi/parser/cpdf_data_avail.cpp b/core/fpdfapi/parser/cpdf_data_avail.cpp index 1db0470f37..8b378aab0e 100644 --- a/core/fpdfapi/parser/cpdf_data_avail.cpp +++ b/core/fpdfapi/parser/cpdf_data_avail.cpp @@ -670,14 +670,12 @@ std::unique_ptr<CPDF_Object> CPDF_DataAvail::ParseIndirectObjectAt( if (!bIsNumber) return nullptr; - uint32_t gennum = FXSYS_atoui(word.c_str()); if (m_syntaxParser.GetKeyword() != "obj") { m_syntaxParser.SetPos(SavedPos); return nullptr; } - std::unique_ptr<CPDF_Object> pObj = - m_syntaxParser.GetObjectBody(pObjList, parser_objnum, gennum, false); + std::unique_ptr<CPDF_Object> pObj = m_syntaxParser.GetObjectBody(pObjList); m_syntaxParser.SetPos(SavedPos); return pObj; } @@ -923,7 +921,7 @@ bool CPDF_DataAvail::CheckTrailer() { const CPDF_ReadValidator::Session read_session(GetValidator().Get()); m_syntaxParser.SetPos(m_dwTrailerOffset); const std::unique_ptr<CPDF_Object> pTrailer = - m_syntaxParser.GetObjectBody(nullptr, 0, 0, false); + m_syntaxParser.GetObjectBody(nullptr); if (!pTrailer) { if (!GetValidator()->has_read_problems()) m_docStatus = PDF_DATAAVAIL_ERROR; |