diff options
Diffstat (limited to 'core/src/fpdfapi/fpdf_parser')
-rw-r--r-- | core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp b/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp index 03bc9aec58..cd22b31238 100644 --- a/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp +++ b/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp @@ -378,11 +378,11 @@ FX_BOOL CPDF_Parser::LoadAllCrossRefV4(FX_FILESIZE xrefpos) { } int32_t xrefsize = GetDirectInteger(m_pTrailer, "Size"); - if (xrefsize <= 0 || xrefsize > kMaxXRefSize) { - return FALSE; + if (xrefsize > 0 && xrefsize <= kMaxXRefSize) { + ShrinkObjectMap(xrefsize); + m_V5Type.SetSize(xrefsize); } - ShrinkObjectMap(xrefsize); - m_V5Type.SetSize(xrefsize); + CFX_FileSizeArray CrossRefList; CFX_FileSizeArray XRefStreamList; CrossRefList.Add(xrefpos); |