| Index: core/src/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp
|
| diff --git a/core/src/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp b/core/src/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp
|
| index b1fde0be71597dfe1d9ee2ed33382738cbeda2da..bb490636a9c2d53e752fc0a85b7a997c92e3631e 100644
|
| --- a/core/src/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp
|
| +++ b/core/src/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp
|
| @@ -9,7 +9,7 @@
|
| #include "../../../include/fxcodec/fx_codec.h"
|
| #include <limits.h>
|
| #define _STREAM_MAX_SIZE_ 20 * 1024 * 1024
|
| -FX_DWORD _A85Decode(const uint8_t* src_buf, FX_DWORD src_size, FX_LPBYTE& dest_buf, FX_DWORD& dest_size)
|
| +FX_DWORD _A85Decode(const uint8_t* src_buf, FX_DWORD src_size, uint8_t*& dest_buf, FX_DWORD& dest_size)
|
| {
|
| dest_size = 0;
|
| dest_buf = NULL;
|
| @@ -82,7 +82,7 @@ FX_DWORD _A85Decode(const uint8_t* src_buf, FX_DWORD src_size, FX_LPBYTE& dest_b
|
| }
|
| return pos;
|
| }
|
| -FX_DWORD _HexDecode(const uint8_t* src_buf, FX_DWORD src_size, FX_LPBYTE& dest_buf, FX_DWORD& dest_size)
|
| +FX_DWORD _HexDecode(const uint8_t* src_buf, FX_DWORD src_size, uint8_t*& dest_buf, FX_DWORD& dest_size)
|
| {
|
| FX_DWORD i;
|
| for (i = 0; i < src_size; i ++)
|
| @@ -122,7 +122,7 @@ FX_DWORD _HexDecode(const uint8_t* src_buf, FX_DWORD src_size, FX_LPBYTE& dest_b
|
| }
|
| return i;
|
| }
|
| -FX_DWORD RunLengthDecode(const uint8_t* src_buf, FX_DWORD src_size, FX_LPBYTE& dest_buf, FX_DWORD& dest_size)
|
| +FX_DWORD RunLengthDecode(const uint8_t* src_buf, FX_DWORD src_size, uint8_t*& dest_buf, FX_DWORD& dest_size)
|
| {
|
| FX_DWORD i = 0;
|
| FX_DWORD old;
|
| @@ -182,7 +182,7 @@ FX_DWORD RunLengthDecode(const uint8_t* src_buf, FX_DWORD src_size, FX_LPBYTE& d
|
| }
|
| return ret;
|
| }
|
| -ICodec_ScanlineDecoder* FPDFAPI_CreateFaxDecoder(FX_LPCBYTE src_buf, FX_DWORD src_size, int width, int height,
|
| +ICodec_ScanlineDecoder* FPDFAPI_CreateFaxDecoder(const uint8_t* src_buf, FX_DWORD src_size, int width, int height,
|
| const CPDF_Dictionary* pParams)
|
| {
|
| int K = 0;
|
| @@ -228,7 +228,7 @@ static FX_BOOL CheckFlateDecodeParams(int Colors, int BitsPerComponent, int Colu
|
| }
|
| return TRUE;
|
| }
|
| -ICodec_ScanlineDecoder* FPDFAPI_CreateFlateDecoder(FX_LPCBYTE src_buf, FX_DWORD src_size, int width, int height,
|
| +ICodec_ScanlineDecoder* FPDFAPI_CreateFlateDecoder(const uint8_t* src_buf, FX_DWORD src_size, int width, int height,
|
| int nComps, int bpc, const CPDF_Dictionary* pParams)
|
| {
|
| int predictor = 0;
|
| @@ -246,7 +246,7 @@ ICodec_ScanlineDecoder* FPDFAPI_CreateFlateDecoder(FX_LPCBYTE src_buf, FX_DWORD
|
| nComps, bpc, predictor, Colors, BitsPerComponent, Columns);
|
| }
|
| FX_DWORD FPDFAPI_FlateOrLZWDecode(FX_BOOL bLZW, const uint8_t* src_buf, FX_DWORD src_size, CPDF_Dictionary* pParams,
|
| - FX_DWORD estimated_size, FX_LPBYTE& dest_buf, FX_DWORD& dest_size)
|
| + FX_DWORD estimated_size, uint8_t*& dest_buf, FX_DWORD& dest_size)
|
| {
|
| int predictor = 0;
|
| FX_BOOL bEarlyChange = TRUE;
|
| @@ -265,8 +265,8 @@ FX_DWORD FPDFAPI_FlateOrLZWDecode(FX_BOOL bLZW, const uint8_t* src_buf, FX_DWORD
|
| bEarlyChange, predictor, Colors, BitsPerComponent, Columns, estimated_size,
|
| dest_buf, dest_size);
|
| }
|
| -FX_BOOL PDF_DataDecode(FX_LPCBYTE src_buf, FX_DWORD src_size, const CPDF_Dictionary* pDict,
|
| - FX_LPBYTE& dest_buf, FX_DWORD& dest_size, CFX_ByteString& ImageEncoding,
|
| +FX_BOOL PDF_DataDecode(const uint8_t* src_buf, FX_DWORD src_size, const CPDF_Dictionary* pDict,
|
| + uint8_t*& dest_buf, FX_DWORD& dest_size, CFX_ByteString& ImageEncoding,
|
| CPDF_Dictionary*& pImageParms, FX_DWORD last_estimated_size, FX_BOOL bImageAcc)
|
|
|
| {
|
| @@ -295,19 +295,19 @@ FX_BOOL PDF_DataDecode(FX_LPCBYTE src_buf, FX_DWORD src_size, const CPDF_Diction
|
| DecoderList.Add(pDecoder->GetConstString());
|
| ParamList.Add(pParams ? pParams->GetDict() : NULL);
|
| }
|
| - FX_LPBYTE last_buf = (FX_LPBYTE)src_buf;
|
| + uint8_t* last_buf = (uint8_t*)src_buf;
|
| FX_DWORD last_size = src_size;
|
| for (int i = 0; i < DecoderList.GetSize(); i ++) {
|
| int estimated_size = i == DecoderList.GetSize() - 1 ? last_estimated_size : 0;
|
| CFX_ByteString decoder = DecoderList[i];
|
| CPDF_Dictionary* pParam = (CPDF_Dictionary*)ParamList[i];
|
| - FX_LPBYTE new_buf = NULL;
|
| + uint8_t* new_buf = NULL;
|
| FX_DWORD new_size = (FX_DWORD) - 1;
|
| int offset = -1;
|
| if (decoder == FX_BSTRC("FlateDecode") || decoder == FX_BSTRC("Fl")) {
|
| if (bImageAcc && i == DecoderList.GetSize() - 1) {
|
| ImageEncoding = FX_BSTRC("FlateDecode");
|
| - dest_buf = (FX_LPBYTE)last_buf;
|
| + dest_buf = (uint8_t*)last_buf;
|
| dest_size = last_size;
|
| pImageParms = pParam;
|
| return TRUE;
|
| @@ -323,7 +323,7 @@ FX_BOOL PDF_DataDecode(FX_LPCBYTE src_buf, FX_DWORD src_size, const CPDF_Diction
|
| } else if (decoder == FX_BSTRC("RunLengthDecode") || decoder == FX_BSTRC("RL")) {
|
| if (bImageAcc && i == DecoderList.GetSize() - 1) {
|
| ImageEncoding = FX_BSTRC("RunLengthDecode");
|
| - dest_buf = (FX_LPBYTE)last_buf;
|
| + dest_buf = (uint8_t*)last_buf;
|
| dest_size = last_size;
|
| pImageParms = pParam;
|
| return TRUE;
|
| @@ -339,7 +339,7 @@ FX_BOOL PDF_DataDecode(FX_LPCBYTE src_buf, FX_DWORD src_size, const CPDF_Diction
|
| }
|
| ImageEncoding = decoder;
|
| pImageParms = pParam;
|
| - dest_buf = (FX_LPBYTE)last_buf;
|
| + dest_buf = (uint8_t*)last_buf;
|
| dest_size = last_size;
|
| return TRUE;
|
| }
|
| @@ -386,7 +386,7 @@ extern const FX_WORD PDFDocEncoding[256] = {
|
| 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7, 0x00f8, 0x00f9,
|
| 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff
|
| };
|
| -CFX_WideString PDF_DecodeText(FX_LPCBYTE src_data, FX_DWORD src_len, CFX_CharMap* pCharMap)
|
| +CFX_WideString PDF_DecodeText(const uint8_t* src_data, FX_DWORD src_len, CFX_CharMap* pCharMap)
|
| {
|
| CFX_WideString result;
|
| if (src_len >= 2 && ((src_data[0] == 0xfe && src_data[1] == 0xff) || (src_data[0] == 0xff && src_data[1] == 0xfe))) {
|
| @@ -398,8 +398,8 @@ CFX_WideString PDF_DecodeText(FX_LPCBYTE src_data, FX_DWORD src_len, CFX_CharMap
|
| if (src_data[0] == 0xff) {
|
| bBE = !src_data[2];
|
| }
|
| - FX_LPWSTR dest_buf = result.GetBuffer(max_chars);
|
| - FX_LPCBYTE uni_str = src_data + 2;
|
| + FX_WCHAR* dest_buf = result.GetBuffer(max_chars);
|
| + const uint8_t* uni_str = src_data + 2;
|
| int dest_pos = 0;
|
| for (FX_DWORD i = 0; i < max_chars * 2; i += 2) {
|
| FX_WORD unicode = bBE ? (uni_str[i] << 8 | uni_str[i + 1]) : (uni_str[i + 1] << 8 | uni_str[i]);
|
| @@ -418,24 +418,24 @@ CFX_WideString PDF_DecodeText(FX_LPCBYTE src_data, FX_DWORD src_len, CFX_CharMap
|
| }
|
| result.ReleaseBuffer(dest_pos);
|
| } else if (pCharMap == NULL) {
|
| - FX_LPWSTR dest_buf = result.GetBuffer(src_len);
|
| + FX_WCHAR* dest_buf = result.GetBuffer(src_len);
|
| for (FX_DWORD i = 0; i < src_len; i ++) {
|
| dest_buf[i] = PDFDocEncoding[src_data[i]];
|
| }
|
| result.ReleaseBuffer(src_len);
|
| } else {
|
| - return (*pCharMap->m_GetWideString)(pCharMap, CFX_ByteString((FX_LPCSTR)src_data, src_len));
|
| + return (*pCharMap->m_GetWideString)(pCharMap, CFX_ByteString((const FX_CHAR*)src_data, src_len));
|
| }
|
| return result;
|
| }
|
| -CFX_ByteString PDF_EncodeText(FX_LPCWSTR pString, int len, CFX_CharMap* pCharMap)
|
| +CFX_ByteString PDF_EncodeText(const FX_WCHAR* pString, int len, CFX_CharMap* pCharMap)
|
| {
|
| if (len == -1) {
|
| len = FXSYS_wcslen(pString);
|
| }
|
| CFX_ByteString result;
|
| if (pCharMap == NULL) {
|
| - FX_LPSTR dest_buf1 = result.GetBuffer(len);
|
| + FX_CHAR* dest_buf1 = result.GetBuffer(len);
|
| int i;
|
| for (i = 0; i < len; i ++) {
|
| int code;
|
| @@ -462,7 +462,7 @@ CFX_ByteString PDF_EncodeText(FX_LPCWSTR pString, int len, CFX_CharMap* pCharMap
|
|
|
| int encLen = len * 2 + 2;
|
|
|
| - FX_LPBYTE dest_buf2 = (FX_LPBYTE)result.GetBuffer(encLen);
|
| + uint8_t* dest_buf2 = (uint8_t*)result.GetBuffer(encLen);
|
| dest_buf2[0] = 0xfe;
|
| dest_buf2[1] = 0xff;
|
| dest_buf2 += 2;
|
| @@ -503,22 +503,22 @@ CFX_ByteString PDF_EncodeString(const CFX_ByteString& src, FX_BOOL bHex)
|
| result.AppendChar(')');
|
| return result.GetByteString();
|
| }
|
| -void FlateEncode(const uint8_t* src_buf, FX_DWORD src_size, FX_LPBYTE& dest_buf, FX_DWORD& dest_size)
|
| +void FlateEncode(const uint8_t* src_buf, FX_DWORD src_size, uint8_t*& dest_buf, FX_DWORD& dest_size)
|
| {
|
| CCodec_ModuleMgr* pEncoders = CPDF_ModuleMgr::Get()->GetCodecModule();
|
| if (pEncoders) {
|
| pEncoders->GetFlateModule()->Encode(src_buf, src_size, dest_buf, dest_size);
|
| }
|
| }
|
| -void FlateEncode(FX_LPCBYTE src_buf, FX_DWORD src_size, int predictor, int Colors, int BitsPerComponent, int Columns,
|
| - FX_LPBYTE& dest_buf, FX_DWORD& dest_size)
|
| +void FlateEncode(const uint8_t* src_buf, FX_DWORD src_size, int predictor, int Colors, int BitsPerComponent, int Columns,
|
| + uint8_t*& dest_buf, FX_DWORD& dest_size)
|
| {
|
| CCodec_ModuleMgr* pEncoders = CPDF_ModuleMgr::Get()->GetCodecModule();
|
| if (pEncoders) {
|
| pEncoders->GetFlateModule()->Encode(src_buf, src_size, predictor, Colors, BitsPerComponent, Columns, dest_buf, dest_size);
|
| }
|
| }
|
| -FX_DWORD FlateDecode(const uint8_t* src_buf, FX_DWORD src_size, FX_LPBYTE& dest_buf, FX_DWORD& dest_size)
|
| +FX_DWORD FlateDecode(const uint8_t* src_buf, FX_DWORD src_size, uint8_t*& dest_buf, FX_DWORD& dest_size)
|
| {
|
| CCodec_ModuleMgr* pEncoders = CPDF_ModuleMgr::Get()->GetCodecModule();
|
| if (pEncoders) {
|
|
|