summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLei Zhang <thestig@chromium.org>2017-12-16 06:52:48 +0000
committerChromium commit bot <commit-bot@chromium.org>2017-12-16 06:52:48 +0000
commit682118834b3cf2b5510ee676088fdd8f11869e84 (patch)
tree78d0f65ea7b95916cd4a3f332f85a5b264ec30f9
parent175f01bb081b262fac00e8d0d331cb9661193554 (diff)
downloadpdfium-682118834b3cf2b5510ee676088fdd8f11869e84.tar.xz
Fix null-dereference in CPDF_ShadingPattern::Load().chromium/3298chromium/3297
BUG=chromium:795490 TBR=hnakashima@chromium.org Change-Id: Ic9f12c1c709c148f7294ab2aaf65fcc695960835 Reviewed-on: https://pdfium-review.googlesource.com/21530 Reviewed-by: Lei Zhang <thestig@chromium.org> Commit-Queue: Lei Zhang <thestig@chromium.org>
-rw-r--r--core/fpdfapi/page/cpdf_shadingpattern.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/core/fpdfapi/page/cpdf_shadingpattern.cpp b/core/fpdfapi/page/cpdf_shadingpattern.cpp
index 585a925ba7..ef40f54182 100644
--- a/core/fpdfapi/page/cpdf_shadingpattern.cpp
+++ b/core/fpdfapi/page/cpdf_shadingpattern.cpp
@@ -89,13 +89,14 @@ bool CPDF_ShadingPattern::Load() {
CPDF_DocPageData* pDocPageData = document()->GetPageData();
m_pCS = pDocPageData->GetColorSpace(pCSObj, nullptr);
- // The color space cannot be a Pattern space, according to the PDF 1.7 spec,
- // page 305.
- if (m_pCS->GetFamily() == PDFCS_PATTERN)
- return false;
+ if (m_pCS) {
+ // The color space cannot be a Pattern space, according to the PDF 1.7 spec,
+ // page 305.
+ if (m_pCS->GetFamily() == PDFCS_PATTERN)
+ return false;
- if (m_pCS)
m_pCountedCS = pDocPageData->FindColorSpacePtr(m_pCS->GetArray());
+ }
m_ShadingType = ToShadingType(pShadingDict->GetIntegerFor("ShadingType"));