summaryrefslogtreecommitdiff
path: root/core/fpdfapi/page/cpdf_color.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/fpdfapi/page/cpdf_color.cpp')
-rw-r--r--core/fpdfapi/page/cpdf_color.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/core/fpdfapi/page/cpdf_color.cpp b/core/fpdfapi/page/cpdf_color.cpp
index d364e8e822..73e3d36ec4 100644
--- a/core/fpdfapi/page/cpdf_color.cpp
+++ b/core/fpdfapi/page/cpdf_color.cpp
@@ -60,6 +60,7 @@ bool CPDF_Color::IsPatternInternal() const {
}
void CPDF_Color::SetColorSpace(CPDF_ColorSpace* pCS) {
+ ASSERT(pCS);
if (m_pCS == pCS) {
if (!m_pBuffer)
m_pBuffer = pCS->CreateBuf();
@@ -72,10 +73,10 @@ void CPDF_Color::SetColorSpace(CPDF_ColorSpace* pCS) {
ReleaseColorSpace();
m_pCS = pCS;
- if (pCS) {
+ if (IsPatternInternal())
m_pBuffer = pCS->CreateBuf();
- pCS->GetDefaultColor(m_pBuffer);
- }
+ else
+ m_pBuffer = pCS->CreateBufAndSetDefaultColor();
}
void CPDF_Color::SetValue(const float* comps) {