diff options
Diffstat (limited to 'core/fpdfapi/parser/fpdf_parser_decode.cpp')
-rw-r--r-- | core/fpdfapi/parser/fpdf_parser_decode.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/core/fpdfapi/parser/fpdf_parser_decode.cpp b/core/fpdfapi/parser/fpdf_parser_decode.cpp index 88712c9760..ed379c7028 100644 --- a/core/fpdfapi/parser/fpdf_parser_decode.cpp +++ b/core/fpdfapi/parser/fpdf_parser_decode.cpp @@ -305,17 +305,18 @@ uint32_t FPDFAPI_FlateOrLZWDecode(FX_BOOL bLZW, uint8_t*& dest_buf, uint32_t& dest_size) { int predictor = 0; + int Colors = 0; + int BitsPerComponent = 0; + int Columns = 0; FX_BOOL bEarlyChange = TRUE; - int Colors = 0, BitsPerComponent = 0, Columns = 0; if (pParams) { predictor = pParams->GetIntegerFor("Predictor"); - bEarlyChange = pParams->GetIntegerFor("EarlyChange", 1); + bEarlyChange = !!pParams->GetIntegerFor("EarlyChange", 1); Colors = pParams->GetIntegerFor("Colors", 1); BitsPerComponent = pParams->GetIntegerFor("BitsPerComponent", 8); Columns = pParams->GetIntegerFor("Columns", 1); - if (!CheckFlateDecodeParams(Colors, BitsPerComponent, Columns)) { + if (!CheckFlateDecodeParams(Colors, BitsPerComponent, Columns)) return (uint32_t)-1; - } } return CPDF_ModuleMgr::Get()->GetFlateModule()->FlateOrLZWDecode( bLZW, src_buf, src_size, bEarlyChange, predictor, Colors, |