Index: core/fpdfapi/fpdf_render/fpdf_render_image.cpp |
diff --git a/core/fpdfapi/fpdf_render/fpdf_render_image.cpp b/core/fpdfapi/fpdf_render/fpdf_render_image.cpp |
index 6aee8e75b6bbfc98bcec8313bbccd91375565814..55e97a9d81fb6b3c45707c93039e16ba4964e524 100644 |
--- a/core/fpdfapi/fpdf_render/fpdf_render_image.cpp |
+++ b/core/fpdfapi/fpdf_render/fpdf_render_image.cpp |
@@ -412,13 +412,13 @@ FX_BOOL CPDF_ImageRenderer::StartRenderDIBSource() { |
"Filter"); |
if (pFilters) { |
if (pFilters->IsName()) { |
- CFX_ByteStringC bsDecodeType = pFilters->GetConstString(); |
+ CFX_ByteString bsDecodeType = pFilters->GetString(); |
if (bsDecodeType == "DCTDecode" || bsDecodeType == "JPXDecode") { |
m_Flags |= FXRENDER_IMAGE_LOSSY; |
} |
} else if (CPDF_Array* pArray = pFilters->AsArray()) { |
for (size_t i = 0; i < pArray->GetCount(); i++) { |
- CFX_ByteStringC bsDecodeType = pArray->GetConstStringAt(i); |
+ CFX_ByteString bsDecodeType = pArray->GetStringAt(i); |
if (bsDecodeType == "DCTDecode" || bsDecodeType == "JPXDecode") { |
m_Flags |= FXRENDER_IMAGE_LOSSY; |
break; |
@@ -880,10 +880,6 @@ CFX_DIBitmap* CPDF_RenderStatus::LoadSMask(CPDF_Dictionary* pSMaskDict, |
if (!pSMaskDict) { |
return NULL; |
} |
- int width = pClipRect->right - pClipRect->left; |
- int height = pClipRect->bottom - pClipRect->top; |
- FX_BOOL bLuminosity = FALSE; |
- bLuminosity = pSMaskDict->GetConstStringBy("S") != "Alpha"; |
CPDF_Stream* pGroup = pSMaskDict->GetStreamBy("G"); |
if (!pGroup) { |
return NULL; |
@@ -895,10 +891,15 @@ CFX_DIBitmap* CPDF_RenderStatus::LoadSMask(CPDF_Dictionary* pSMaskDict, |
CFX_Matrix matrix = *pMatrix; |
matrix.TranslateI(-pClipRect->left, -pClipRect->top); |
+ |
CPDF_Form form(m_pContext->GetDocument(), m_pContext->GetPageResources(), |
pGroup); |
form.ParseContent(NULL, NULL, NULL, NULL); |
+ |
CFX_FxgeDevice bitmap_device; |
+ FX_BOOL bLuminosity = pSMaskDict->GetStringBy("S") != "Alpha"; |
+ int width = pClipRect->right - pClipRect->left; |
+ int height = pClipRect->bottom - pClipRect->top; |
#if _FXM_PLATFORM_ == _FXM_PLATFORM_APPLE_ |
if (!bitmap_device.Create(width, height, |
bLuminosity ? FXDIB_Rgb32 : FXDIB_8bppMask)) { |