diff --git a/core/fpdfapi/page/cpdf_colorspace.cpp b/core/fpdfapi/page/cpdf_colorspace.cpp
index c09562c..89d5285 100644
--- a/core/fpdfapi/page/cpdf_colorspace.cpp
+++ b/core/fpdfapi/page/cpdf_colorspace.cpp
@@ -947,6 +947,9 @@
   if (!pAlterCS)
     return false;
 
+  if (pAlterCS->GetFamily() == PDFCS_PATTERN)
+    return false;
+
   if (pAlterCS->CountComponents() != m_nComponents)
     return false;
 
@@ -1102,6 +1105,9 @@
   if (!m_pAltCS)
     return false;
 
+  if (m_pAltCS->IsSpecial())
+    return false;
+
   CPDF_Object* pFuncObj = pArray->GetDirectObjectAt(3);
   if (pFuncObj && !pFuncObj->IsName())
     m_pFunc = CPDF_Function::Load(pFuncObj);
@@ -1181,6 +1187,9 @@
   if (!m_pAltCS || !m_pFunc)
     return false;
 
+  if (m_pAltCS->IsSpecial())
+    return false;
+
   return m_pFunc->CountOutputs() >= m_pAltCS->CountComponents();
 }
 
diff --git a/core/fpdfapi/page/cpdf_colorspace.h b/core/fpdfapi/page/cpdf_colorspace.h
index ff10dfc..9bd7c8d 100644
--- a/core/fpdfapi/page/cpdf_colorspace.h
+++ b/core/fpdfapi/page/cpdf_colorspace.h
@@ -57,6 +57,11 @@
   void GetDefaultColor(float* buf) const;
   uint32_t CountComponents() const;
   int GetFamily() const { return m_Family; }
+  bool IsSpecial() const {
+    return GetFamily() == PDFCS_SEPARATION || GetFamily() == PDFCS_DEVICEN ||
+           GetFamily() == PDFCS_INDEXED || GetFamily() == PDFCS_PATTERN;
+  }
+
   virtual void GetDefaultValue(int iComponent,
                                float* value,
                                float* min,
