Add an ASSERT() in CPDF_DIBBase::ContinueLoadDIBBase().
Make sure the decoder is JBIG2 before doing JBIG2 decoding.
Change-Id: Icf44349b3495e20b5a90a2dcc912b91cf5ff67aa
Reviewed-on: https://pdfium-review.googlesource.com/c/50730
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/core/fpdfapi/render/cpdf_dibbase.cpp b/core/fpdfapi/render/cpdf_dibbase.cpp
index 1f1ec21..b325edb 100644
--- a/core/fpdfapi/render/cpdf_dibbase.cpp
+++ b/core/fpdfapi/render/cpdf_dibbase.cpp
@@ -294,9 +294,11 @@
if (m_Status == LoadState::kFail)
return LoadState::kFail;
- if (m_pStreamAcc->GetImageDecoder() == "JPXDecode")
+ ByteString decoder = m_pStreamAcc->GetImageDecoder();
+ if (decoder == "JPXDecode")
return LoadState::kFail;
+ ASSERT(decoder == "JBIG2Decode");
FXCODEC_STATUS iDecodeStatus;
CCodec_Jbig2Module* pJbig2Module = CPDF_ModuleMgr::Get()->GetJbig2Module();
if (!m_pJbig2Context) {