Index: core/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp |
diff --git a/core/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp b/core/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp |
index 4071a115df082de5e4a7a56408daf95d147de639..2b829d0c567f6fcc97de11a26e422d79c15028cb 100644 |
--- a/core/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp |
+++ b/core/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp |
@@ -561,19 +561,20 @@ int CPDF_DIBSource::CreateDecoder() { |
src_data, src_size, m_Width, m_Height, m_nComponents, |
pParams ? pParams->GetIntegerBy("ColorTransform", 1) : 1)); |
if (!m_pDecoder) { |
- FX_BOOL bTransform = FALSE; |
+ bool bTransform = false; |
int comps; |
int bpc; |
CCodec_JpegModule* pJpegModule = CPDF_ModuleMgr::Get()->GetJpegModule(); |
- if (pJpegModule->LoadInfo(src_data, src_size, m_Width, m_Height, comps, |
- bpc, bTransform)) { |
+ if (pJpegModule->LoadInfo(src_data, src_size, &m_Width, &m_Height, &comps, |
+ &bpc, &bTransform)) { |
if (m_nComponents != static_cast<uint32_t>(comps)) { |
FX_Free(m_pCompData); |
m_pCompData = nullptr; |
m_nComponents = static_cast<uint32_t>(comps); |
if (m_pColorSpace && |
- m_pColorSpace->CountComponents() != m_nComponents) |
+ m_pColorSpace->CountComponents() != m_nComponents) { |
return 0; |
+ } |
if (m_Family == PDFCS_LAB && m_nComponents != 3) |
return 0; |
m_pCompData = GetDecodeAndMaskArray(m_bDefaultDecode, m_bColorKey); |
@@ -613,17 +614,14 @@ int CPDF_DIBSource::CreateDecoder() { |
FX_SAFE_UINT32 requested_pitch = |
CalculatePitch8(m_bpc, m_nComponents, m_Width); |
- if (!requested_pitch.IsValid()) { |
+ if (!requested_pitch.IsValid()) |
return 0; |
- } |
FX_SAFE_UINT32 provided_pitch = CalculatePitch8( |
m_pDecoder->GetBPC(), m_pDecoder->CountComps(), m_pDecoder->GetWidth()); |
- if (!provided_pitch.IsValid()) { |
+ if (!provided_pitch.IsValid()) |
return 0; |
- } |
- if (provided_pitch.ValueOrDie() < requested_pitch.ValueOrDie()) { |
+ if (provided_pitch.ValueOrDie() < requested_pitch.ValueOrDie()) |
return 0; |
- } |
return 1; |
} |