Fix another CHECK() on negative absolute position in CPDF_Parser

Treat negative positions the same as zero and skip.

-- Soften CHECK() to DCHECK() until the dust settles.

Bug: chromium:1325526
Change-Id: I0bbb6a0692944381de1d41abe3cf7e4b7938a2a8
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/93750
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
diff --git a/core/fpdfapi/parser/cpdf_parser.cpp b/core/fpdfapi/parser/cpdf_parser.cpp
index f78bc8b..2d0f4ae 100644
--- a/core/fpdfapi/parser/cpdf_parser.cpp
+++ b/core/fpdfapi/parser/cpdf_parser.cpp
@@ -329,7 +329,7 @@
 // in the cross reference table are all off by one.
 bool CPDF_Parser::VerifyCrossRefV4() {
   for (const auto& it : m_CrossRefTable->objects_info()) {
-    if (it.second.pos == 0)
+    if (it.second.pos <= 0)
       continue;
     // Find the first non-zero position.
     FX_FILESIZE SavedPos = m_pSyntax->GetPos();
diff --git a/core/fpdfapi/parser/cpdf_syntax_parser.cpp b/core/fpdfapi/parser/cpdf_syntax_parser.cpp
index e8edc42..6b51bce 100644
--- a/core/fpdfapi/parser/cpdf_syntax_parser.cpp
+++ b/core/fpdfapi/parser/cpdf_syntax_parser.cpp
@@ -481,7 +481,7 @@
 }
 
 void CPDF_SyntaxParser::SetPos(FX_FILESIZE pos) {
-  CHECK_GE(pos, 0);
+  DCHECK_GE(pos, 0);
   m_Pos = std::min(pos, m_FileLen);
 }