When forcing clear page data, no need to release colorspace when releasing pattern
[pdfium.git] / core / src / fpdfapi / fpdf_page / fpdf_page_pattern.cpp
index bcb8196..67ea4fe 100644 (file)
@@ -8,7 +8,7 @@
 #include "pageint.h"
 
 CPDF_Pattern::CPDF_Pattern(const CFX_AffineMatrix* pParentMatrix) :
-    m_pPatternObj(NULL), m_PatternType(PATTERN_TILING), m_pDocument(NULL)
+    m_pPatternObj(NULL), m_PatternType(PATTERN_TILING), m_pDocument(NULL), m_bForceClear(FALSE)
 {
     if (pParentMatrix) {
         m_ParentMatrix = *pParentMatrix;
@@ -97,7 +97,7 @@ void CPDF_ShadingPattern::Clear()
         m_pFunctions[i] = NULL;
     }
     CPDF_ColorSpace* pCS = m_pCS;
-    if (pCS && m_pDocument) {
+    if (!m_bForceClear && pCS && m_pDocument) {
         m_pDocument->GetPageData()->ReleaseColorSpace(pCS->GetArray());
     }
     m_ShadingType = 0;