From ce9ad1bee792856c2d9e940ecffff97145e18d32 Mon Sep 17 00:00:00 2001 From: Henrique Nakashima Date: Wed, 30 Aug 2017 17:02:01 -0400 Subject: Fix colorspace loading for mutually referencing colorspaces. For example, Indexed colorspace A uses ICC Based colorspace B as its "base". B declares A as its "Alternate" fallback. Bug: chromium:759012 Change-Id: I4b78e68b9a77456050ecae4452837495546bf93d Reviewed-on: https://pdfium-review.googlesource.com/12471 Commit-Queue: Henrique Nakashima Reviewed-by: dsinclair Reviewed-by: Ryan Harrison --- core/fpdfapi/page/cpdf_docpagedata.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'core/fpdfapi/page/cpdf_docpagedata.h') diff --git a/core/fpdfapi/page/cpdf_docpagedata.h b/core/fpdfapi/page/cpdf_docpagedata.h index 0fda16911d..40647bc9a6 100644 --- a/core/fpdfapi/page/cpdf_docpagedata.h +++ b/core/fpdfapi/page/cpdf_docpagedata.h @@ -41,6 +41,10 @@ class CPDF_DocPageData { CPDF_ColorSpace* GetColorSpace(CPDF_Object* pCSObj, const CPDF_Dictionary* pResources); + CPDF_ColorSpace* GetColorSpaceGuarded(CPDF_Object* pCSObj, + const CPDF_Dictionary* pResources, + std::set* pVisited); + CPDF_ColorSpace* GetCopiedColorSpace(CPDF_Object* pCSObj); void ReleaseColorSpace(const CPDF_Object* pColorSpace); @@ -64,10 +68,6 @@ class CPDF_DocPageData { private: using CPDF_CountedFont = CPDF_CountedObject; - CPDF_ColorSpace* GetColorSpaceImpl(CPDF_Object* pCSObj, - const CPDF_Dictionary* pResources, - std::set* pVisited); - bool m_bForceClear; CFX_UnownedPtr const m_pPDFDoc; std::map m_HashProfileMap; -- cgit v1.2.3