OLD | NEW |
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 "../../../include/fpdfapi/fpdf_parser.h" | 7 #include "../../../include/fpdfapi/fpdf_parser.h" |
8 #include "../../../include/fxcrt/fx_string.h" | 8 #include "../../../include/fxcrt/fx_string.h" |
9 | 9 |
10 //static | 10 //static |
(...skipping 1068 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1079 m_pData = (FX_LPBYTE)pStream->m_pDataBuf; | 1079 m_pData = (FX_LPBYTE)pStream->m_pDataBuf; |
1080 return; | 1080 return; |
1081 } | 1081 } |
1082 FX_LPBYTE pSrcData; | 1082 FX_LPBYTE pSrcData; |
1083 FX_DWORD dwSrcSize = pStream->m_dwSize; | 1083 FX_DWORD dwSrcSize = pStream->m_dwSize; |
1084 if (dwSrcSize == 0) { | 1084 if (dwSrcSize == 0) { |
1085 return; | 1085 return; |
1086 } | 1086 } |
1087 if (!pStream->IsMemoryBased()) { | 1087 if (!pStream->IsMemoryBased()) { |
1088 pSrcData = m_pSrcData = FX_Alloc(FX_BYTE, dwSrcSize); | 1088 pSrcData = m_pSrcData = FX_Alloc(FX_BYTE, dwSrcSize); |
1089 if (!pSrcData || !pStream->ReadRawData(0, pSrcData, dwSrcSize)) { | 1089 if (!pStream->ReadRawData(0, pSrcData, dwSrcSize)) { |
1090 return; | 1090 return; |
1091 } | 1091 } |
1092 } else { | 1092 } else { |
1093 pSrcData = pStream->m_pDataBuf; | 1093 pSrcData = pStream->m_pDataBuf; |
1094 } | 1094 } |
1095 FX_LPBYTE pDecryptedData; | 1095 FX_LPBYTE pDecryptedData; |
1096 FX_DWORD dwDecryptedSize; | 1096 FX_DWORD dwDecryptedSize; |
1097 if (pStream->m_pCryptoHandler) { | 1097 if (pStream->m_pCryptoHandler) { |
1098 CFX_BinaryBuf dest_buf; | 1098 CFX_BinaryBuf dest_buf; |
1099 dest_buf.EstimateSize(pStream->m_pCryptoHandler->DecryptGetSize(dwSrcSiz
e)); | 1099 dest_buf.EstimateSize(pStream->m_pCryptoHandler->DecryptGetSize(dwSrcSiz
e)); |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1158 } | 1158 } |
1159 FX_LPBYTE CPDF_StreamAcc::DetachData() | 1159 FX_LPBYTE CPDF_StreamAcc::DetachData() |
1160 { | 1160 { |
1161 if (m_bNewBuf) { | 1161 if (m_bNewBuf) { |
1162 FX_LPBYTE p = m_pData; | 1162 FX_LPBYTE p = m_pData; |
1163 m_pData = NULL; | 1163 m_pData = NULL; |
1164 m_dwSize = 0; | 1164 m_dwSize = 0; |
1165 return p; | 1165 return p; |
1166 } | 1166 } |
1167 FX_LPBYTE p = FX_Alloc(FX_BYTE, m_dwSize); | 1167 FX_LPBYTE p = FX_Alloc(FX_BYTE, m_dwSize); |
1168 if (p == NULL) { | |
1169 return NULL; | |
1170 } | |
1171 FXSYS_memcpy32(p, m_pData, m_dwSize); | 1168 FXSYS_memcpy32(p, m_pData, m_dwSize); |
1172 return p; | 1169 return p; |
1173 } | 1170 } |
1174 void CPDF_Reference::SetRef(CPDF_IndirectObjects* pDoc, FX_DWORD objnum) | 1171 void CPDF_Reference::SetRef(CPDF_IndirectObjects* pDoc, FX_DWORD objnum) |
1175 { | 1172 { |
1176 m_pObjList = pDoc; | 1173 m_pObjList = pDoc; |
1177 m_RefObjNum = objnum; | 1174 m_RefObjNum = objnum; |
1178 } | 1175 } |
1179 CPDF_IndirectObjects::CPDF_IndirectObjects(IPDF_DocParser* pParser) | 1176 CPDF_IndirectObjects::CPDF_IndirectObjects(IPDF_DocParser* pParser) |
1180 { | 1177 { |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1282 pObj->m_ObjNum = objnum; | 1279 pObj->m_ObjNum = objnum; |
1283 m_IndirectObjs.SetAt((FX_LPVOID)(FX_UINTPTR)objnum, pObj); | 1280 m_IndirectObjs.SetAt((FX_LPVOID)(FX_UINTPTR)objnum, pObj); |
1284 if (m_LastObjNum < objnum) { | 1281 if (m_LastObjNum < objnum) { |
1285 m_LastObjNum = objnum; | 1282 m_LastObjNum = objnum; |
1286 } | 1283 } |
1287 } | 1284 } |
1288 FX_DWORD CPDF_IndirectObjects::GetLastObjNum() const | 1285 FX_DWORD CPDF_IndirectObjects::GetLastObjNum() const |
1289 { | 1286 { |
1290 return m_LastObjNum; | 1287 return m_LastObjNum; |
1291 } | 1288 } |
OLD | NEW |