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

Side by Side Diff: core/src/fpdfapi/fpdf_edit/fpdf_edit_create.cpp

Issue 1778173002: Split apart the remainder of fpdf_render_render.cpp into per-class files. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: remove more stray includes. Created 4 years, 9 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 2014 PDFium Authors. All rights reserved. 1 // Copyright 2014 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/src/fpdfapi/fpdf_edit/editint.h" 7 #include "core/src/fpdfapi/fpdf_edit/editint.h"
8 8
9 #include <vector> 9 #include <vector>
10 10
11 #include "core/include/fpdfapi/cpdf_document.h" 11 #include "core/include/fpdfapi/cpdf_document.h"
12 #include "core/include/fpdfapi/cpdf_parser.h" 12 #include "core/include/fpdfapi/cpdf_parser.h"
13 #include "core/include/fpdfapi/fpdf_parser.h" 13 #include "core/include/fpdfapi/fpdf_parser_decode.h"
14 #include "core/include/fpdfapi/fpdf_serial.h" 14 #include "core/include/fpdfapi/fpdf_serial.h"
15 #include "core/include/fpdfapi/ipdf_crypto_handler.h" 15 #include "core/include/fpdfapi/ipdf_crypto_handler.h"
16 #include "core/include/fxcrt/fx_ext.h" 16 #include "core/include/fxcrt/fx_ext.h"
17 #include "core/src/fpdfapi/fpdf_parser/cpdf_standard_crypto_handler.h" 17 #include "core/src/fpdfapi/fpdf_parser/cpdf_standard_crypto_handler.h"
18 #include "core/src/fpdfapi/fpdf_parser/cpdf_standard_security_handler.h" 18 #include "core/src/fpdfapi/fpdf_parser/cpdf_standard_security_handler.h"
19 #include "third_party/base/stl_util.h" 19 #include "third_party/base/stl_util.h"
20 20
21 #define PDF_OBJECTSTREAM_MAXLENGTH (256 * 1024) 21 #define PDF_OBJECTSTREAM_MAXLENGTH (256 * 1024)
22 #define PDF_XREFSTREAM_MAXSIZE 10000 22 #define PDF_XREFSTREAM_MAXSIZE 10000
23 23
(...skipping 929 matching lines...) Expand 10 before | Expand all | Expand 10 after
953 CPDF_Dictionary* pDict = pObj->GetDict(); 953 CPDF_Dictionary* pDict = pObj->GetDict();
954 if (pObj->IsStream()) { 954 if (pObj->IsStream()) {
955 if (pDict && pDict->GetStringBy("Type") == "XRef") 955 if (pDict && pDict->GetStringBy("Type") == "XRef")
956 return 0; 956 return 0;
957 return 1; 957 return 1;
958 } 958 }
959 959
960 if (pDict) { 960 if (pDict) {
961 if (pDict == m_pDocument->m_pRootDict || pDict == m_pEncryptDict) 961 if (pDict == m_pDocument->m_pRootDict || pDict == m_pEncryptDict)
962 return 1; 962 return 1;
963 if (IsSignatureDict(pDict)) 963 if (pDict->IsSignatureDict())
964 return 1; 964 return 1;
965 if (pDict->GetStringBy("Type") == "Page") 965 if (pDict->GetStringBy("Type") == "Page")
966 return 1; 966 return 1;
967 } 967 }
968 968
969 m_pXRefStream->AddObjectNumberToIndexArray(objnum); 969 m_pXRefStream->AddObjectNumberToIndexArray(objnum);
970 if (m_pXRefStream->CompressIndirectObject(objnum, pObj, this) < 0) 970 if (m_pXRefStream->CompressIndirectObject(objnum, pObj, this) < 0)
971 return -1; 971 return -1;
972 if (!IsXRefNeedEnd(m_pXRefStream, m_dwFlags)) 972 if (!IsXRefNeedEnd(m_pXRefStream, m_dwFlags))
973 return 0; 973 return 0;
(...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after
1219 } 1219 }
1220 case CPDF_Object::DICTIONARY: { 1220 case CPDF_Object::DICTIONARY: {
1221 if (!m_pCryptoHandler || pObj == m_pEncryptDict) { 1221 if (!m_pCryptoHandler || pObj == m_pEncryptDict) {
1222 return PDF_CreatorAppendObject(pObj, &m_File, m_Offset); 1222 return PDF_CreatorAppendObject(pObj, &m_File, m_Offset);
1223 } 1223 }
1224 if (m_File.AppendString("<<") < 0) { 1224 if (m_File.AppendString("<<") < 0) {
1225 return -1; 1225 return -1;
1226 } 1226 }
1227 m_Offset += 2; 1227 m_Offset += 2;
1228 const CPDF_Dictionary* p = pObj->AsDictionary(); 1228 const CPDF_Dictionary* p = pObj->AsDictionary();
1229 bool bSignDict = IsSignatureDict(p); 1229 bool bSignDict = p->IsSignatureDict();
1230 for (const auto& it : *p) { 1230 for (const auto& it : *p) {
1231 FX_BOOL bSignValue = FALSE; 1231 FX_BOOL bSignValue = FALSE;
1232 const CFX_ByteString& key = it.first; 1232 const CFX_ByteString& key = it.first;
1233 CPDF_Object* pValue = it.second; 1233 CPDF_Object* pValue = it.second;
1234 if (m_File.AppendString("/") < 0) { 1234 if (m_File.AppendString("/") < 0) {
1235 return -1; 1235 return -1;
1236 } 1236 }
1237 if ((len = m_File.AppendString(PDF_NameEncode(key))) < 0) { 1237 if ((len = m_File.AppendString(PDF_NameEncode(key))) < 0) {
1238 return -1; 1238 return -1;
1239 } 1239 }
(...skipping 821 matching lines...) Expand 10 before | Expand all | Expand 10 after
2061 m_bNewCrypto = FALSE; 2061 m_bNewCrypto = FALSE;
2062 if (!m_bStandardSecurity) { 2062 if (!m_bStandardSecurity) {
2063 return; 2063 return;
2064 } 2064 }
2065 if (m_pEncryptDict) { 2065 if (m_pEncryptDict) {
2066 m_pEncryptDict->Release(); 2066 m_pEncryptDict->Release();
2067 m_pEncryptDict = NULL; 2067 m_pEncryptDict = NULL;
2068 } 2068 }
2069 m_bStandardSecurity = FALSE; 2069 m_bStandardSecurity = FALSE;
2070 } 2070 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698