| 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/fpdfapi/fpdf_module.h" | 8 #include "../../../include/fpdfapi/fpdf_module.h" |
| 9 #include "../../../include/fxcodec/fx_codec.h" | 9 #include "../../../include/fxcodec/fx_codec.h" |
| 10 #include <limits.h> | 10 #include <limits.h> |
| (...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 304 uint8_t* new_buf = NULL; | 304 uint8_t* new_buf = NULL; |
| 305 FX_DWORD new_size = (FX_DWORD) - 1; | 305 FX_DWORD new_size = (FX_DWORD) - 1; |
| 306 int offset = -1; | 306 int offset = -1; |
| 307 if (decoder == FX_BSTRC("FlateDecode") || decoder == FX_BSTRC("Fl")) { | 307 if (decoder == FX_BSTRC("FlateDecode") || decoder == FX_BSTRC("Fl")) { |
| 308 if (bImageAcc && i == DecoderList.GetSize() - 1) { | 308 if (bImageAcc && i == DecoderList.GetSize() - 1) { |
| 309 ImageEncoding = FX_BSTRC("FlateDecode"); | 309 ImageEncoding = FX_BSTRC("FlateDecode"); |
| 310 dest_buf = (uint8_t*)last_buf; | 310 dest_buf = (uint8_t*)last_buf; |
| 311 dest_size = last_size; | 311 dest_size = last_size; |
| 312 pImageParms = pParam; | 312 pImageParms = pParam; |
| 313 return TRUE; | 313 return TRUE; |
| 314 } else { | |
| 315 offset = FPDFAPI_FlateOrLZWDecode(FALSE, last_buf, last_size, pP
aram, estimated_size, new_buf, new_size); | |
| 316 } | 314 } |
| 315 offset = FPDFAPI_FlateOrLZWDecode(FALSE, last_buf, last_size, pParam
, estimated_size, new_buf, new_size); |
| 317 } else if (decoder == FX_BSTRC("LZWDecode") || decoder == FX_BSTRC("LZW"
)) { | 316 } else if (decoder == FX_BSTRC("LZWDecode") || decoder == FX_BSTRC("LZW"
)) { |
| 318 offset = FPDFAPI_FlateOrLZWDecode(TRUE, last_buf, last_size, pParam,
estimated_size, new_buf, new_size); | 317 offset = FPDFAPI_FlateOrLZWDecode(TRUE, last_buf, last_size, pParam,
estimated_size, new_buf, new_size); |
| 319 } else if (decoder == FX_BSTRC("ASCII85Decode") || decoder == FX_BSTRC("
A85")) { | 318 } else if (decoder == FX_BSTRC("ASCII85Decode") || decoder == FX_BSTRC("
A85")) { |
| 320 offset = _A85Decode(last_buf, last_size, new_buf, new_size); | 319 offset = _A85Decode(last_buf, last_size, new_buf, new_size); |
| 321 } else if (decoder == FX_BSTRC("ASCIIHexDecode") || decoder == FX_BSTRC(
"AHx")) { | 320 } else if (decoder == FX_BSTRC("ASCIIHexDecode") || decoder == FX_BSTRC(
"AHx")) { |
| 322 offset = _HexDecode(last_buf, last_size, new_buf, new_size); | 321 offset = _HexDecode(last_buf, last_size, new_buf, new_size); |
| 323 } else if (decoder == FX_BSTRC("RunLengthDecode") || decoder == FX_BSTRC
("RL")) { | 322 } else if (decoder == FX_BSTRC("RunLengthDecode") || decoder == FX_BSTRC
("RL")) { |
| 324 if (bImageAcc && i == DecoderList.GetSize() - 1) { | 323 if (bImageAcc && i == DecoderList.GetSize() - 1) { |
| 325 ImageEncoding = FX_BSTRC("RunLengthDecode"); | 324 ImageEncoding = FX_BSTRC("RunLengthDecode"); |
| 326 dest_buf = (uint8_t*)last_buf; | 325 dest_buf = (uint8_t*)last_buf; |
| (...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 519 } | 518 } |
| 520 } | 519 } |
| 521 FX_DWORD FlateDecode(const uint8_t* src_buf, FX_DWORD src_size, uint8_t*& dest_b
uf, FX_DWORD& dest_size) | 520 FX_DWORD FlateDecode(const uint8_t* src_buf, FX_DWORD src_size, uint8_t*& dest_b
uf, FX_DWORD& dest_size) |
| 522 { | 521 { |
| 523 CCodec_ModuleMgr* pEncoders = CPDF_ModuleMgr::Get()->GetCodecModule(); | 522 CCodec_ModuleMgr* pEncoders = CPDF_ModuleMgr::Get()->GetCodecModule(); |
| 524 if (pEncoders) { | 523 if (pEncoders) { |
| 525 return pEncoders->GetFlateModule()->FlateOrLZWDecode(FALSE, src_buf, src
_size, FALSE, 0, 0, 0, 0, 0, dest_buf, dest_size); | 524 return pEncoders->GetFlateModule()->FlateOrLZWDecode(FALSE, src_buf, src
_size, FALSE, 0, 0, 0, 0, 0, dest_buf, dest_size); |
| 526 } | 525 } |
| 527 return 0; | 526 return 0; |
| 528 } | 527 } |
| OLD | NEW |