Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(62)

Side by Side Diff: core/fpdfapi/fpdf_parser/cpdf_syntax_parser.cpp

Issue 1898173002: Remove IPDF_CryptoHandler and IPDF_SecurityHandler. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 PDFium Authors. All rights reserved. 1 // Copyright 2016 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 6
7 #include "core/fpdfapi/fpdf_parser/cpdf_syntax_parser.h" 7 #include "core/fpdfapi/fpdf_parser/cpdf_syntax_parser.h"
8 8
9 #include <vector> 9 #include <vector>
10 10
11 #include "core/fpdfapi/fpdf_parser/cpdf_boolean.h" 11 #include "core/fpdfapi/fpdf_parser/cpdf_boolean.h"
12 #include "core/fpdfapi/fpdf_parser/cpdf_crypto_handler.h"
12 #include "core/fpdfapi/fpdf_parser/cpdf_null.h" 13 #include "core/fpdfapi/fpdf_parser/cpdf_null.h"
13 #include "core/fpdfapi/fpdf_parser/fpdf_parser_utility.h" 14 #include "core/fpdfapi/fpdf_parser/fpdf_parser_utility.h"
14 #include "core/fpdfapi/fpdf_parser/include/cpdf_array.h" 15 #include "core/fpdfapi/fpdf_parser/include/cpdf_array.h"
15 #include "core/fpdfapi/fpdf_parser/include/cpdf_dictionary.h" 16 #include "core/fpdfapi/fpdf_parser/include/cpdf_dictionary.h"
16 #include "core/fpdfapi/fpdf_parser/include/cpdf_name.h" 17 #include "core/fpdfapi/fpdf_parser/include/cpdf_name.h"
17 #include "core/fpdfapi/fpdf_parser/include/cpdf_number.h" 18 #include "core/fpdfapi/fpdf_parser/include/cpdf_number.h"
18 #include "core/fpdfapi/fpdf_parser/include/cpdf_reference.h" 19 #include "core/fpdfapi/fpdf_parser/include/cpdf_reference.h"
19 #include "core/fpdfapi/fpdf_parser/include/cpdf_stream.h" 20 #include "core/fpdfapi/fpdf_parser/include/cpdf_stream.h"
20 #include "core/fpdfapi/fpdf_parser/include/cpdf_string.h" 21 #include "core/fpdfapi/fpdf_parser/include/cpdf_string.h"
21 #include "core/fpdfapi/fpdf_parser/include/fpdf_parser_decode.h" 22 #include "core/fpdfapi/fpdf_parser/include/fpdf_parser_decode.h"
22 #include "core/fpdfapi/fpdf_parser/ipdf_crypto_handler.h"
23 #include "core/fpdfapi/include/cpdf_modulemgr.h" 23 #include "core/fpdfapi/include/cpdf_modulemgr.h"
24 #include "core/fxcrt/include/fx_ext.h" 24 #include "core/fxcrt/include/fx_ext.h"
25 #include "third_party/base/numerics/safe_math.h" 25 #include "third_party/base/numerics/safe_math.h"
26 26
27 namespace { 27 namespace {
28 28
29 struct SearchTagRecord { 29 struct SearchTagRecord {
30 const char* m_pTag; 30 const char* m_pTag;
31 uint32_t m_Len; 31 uint32_t m_Len;
32 uint32_t m_Offset; 32 uint32_t m_Offset;
(...skipping 606 matching lines...) Expand 10 before | Expand all | Expand 10 after
639 if (pLenObj && differingObjNum) 639 if (pLenObj && differingObjNum)
640 len = pLenObj->GetInteger(); 640 len = pLenObj->GetInteger();
641 641
642 // Locate the start of stream. 642 // Locate the start of stream.
643 ToNextLine(); 643 ToNextLine();
644 FX_FILESIZE streamStartPos = m_Pos; 644 FX_FILESIZE streamStartPos = m_Pos;
645 645
646 const CFX_ByteStringC kEndStreamStr("endstream"); 646 const CFX_ByteStringC kEndStreamStr("endstream");
647 const CFX_ByteStringC kEndObjStr("endobj"); 647 const CFX_ByteStringC kEndObjStr("endobj");
648 648
649 IPDF_CryptoHandler* pCryptoHandler = 649 CPDF_CryptoHandler* pCryptoHandler =
650 objnum == (uint32_t)m_MetadataObjnum ? nullptr : m_pCryptoHandler.get(); 650 objnum == (uint32_t)m_MetadataObjnum ? nullptr : m_pCryptoHandler.get();
651 if (!pCryptoHandler) { 651 if (!pCryptoHandler) {
652 FX_BOOL bSearchForKeyword = TRUE; 652 FX_BOOL bSearchForKeyword = TRUE;
653 if (len >= 0) { 653 if (len >= 0) {
654 pdfium::base::CheckedNumeric<FX_FILESIZE> pos = m_Pos; 654 pdfium::base::CheckedNumeric<FX_FILESIZE> pos = m_Pos;
655 pos += len; 655 pos += len;
656 if (pos.IsValid() && pos.ValueOrDie() < m_FileLen) 656 if (pos.IsValid() && pos.ValueOrDie() < m_FileLen)
657 m_Pos = pos.ValueOrDie(); 657 m_Pos = pos.ValueOrDie();
658 658
659 m_Pos += ReadEOLMarkers(m_Pos); 659 m_Pos += ReadEOLMarkers(m_Pos);
(...skipping 318 matching lines...) Expand 10 before | Expand all | Expand 10 after
978 match = ch == tag[0] ? 1 : 0; 978 match = ch == tag[0] ? 1 : 0;
979 } 979 }
980 980
981 if (limit && m_Pos == limit) 981 if (limit && m_Pos == limit)
982 return -1; 982 return -1;
983 } 983 }
984 return -1; 984 return -1;
985 } 985 }
986 986
987 void CPDF_SyntaxParser::SetEncrypt( 987 void CPDF_SyntaxParser::SetEncrypt(
988 std::unique_ptr<IPDF_CryptoHandler> pCryptoHandler) { 988 std::unique_ptr<CPDF_CryptoHandler> pCryptoHandler) {
989 m_pCryptoHandler = std::move(pCryptoHandler); 989 m_pCryptoHandler = std::move(pCryptoHandler);
990 } 990 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698