diff options
Diffstat (limited to 'core/fpdfapi/page/cpdf_colorspace.cpp')
-rw-r--r-- | core/fpdfapi/page/cpdf_colorspace.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/core/fpdfapi/page/cpdf_colorspace.cpp b/core/fpdfapi/page/cpdf_colorspace.cpp index e1dd598a63..528c6ea3cf 100644 --- a/core/fpdfapi/page/cpdf_colorspace.cpp +++ b/core/fpdfapi/page/cpdf_colorspace.cpp @@ -400,6 +400,11 @@ std::unique_ptr<CPDF_ColorSpace> CPDF_ColorSpace::Load( if (!pObj) return nullptr; + if (pdfium::ContainsKey(*pVisited, pObj)) + return nullptr; + + pdfium::ScopedSetInsertion<CPDF_Object*> insertion(pVisited, pObj); + if (pObj->IsName()) { return std::unique_ptr<CPDF_ColorSpace>( ColorspaceFromName(pObj->GetString())); |