diff options
Diffstat (limited to 'core/src/fpdfapi/fpdf_page/fpdf_page_image.cpp')
-rw-r--r-- | core/src/fpdfapi/fpdf_page/fpdf_page_image.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/core/src/fpdfapi/fpdf_page/fpdf_page_image.cpp b/core/src/fpdfapi/fpdf_page/fpdf_page_image.cpp index 9cdf00e717..a24da0adc1 100644 --- a/core/src/fpdfapi/fpdf_page/fpdf_page_image.cpp +++ b/core/src/fpdfapi/fpdf_page/fpdf_page_image.cpp @@ -45,15 +45,14 @@ void CPDF_Image::Release() { } } CPDF_Image* CPDF_Image::Clone() { - if (m_pStream->GetObjNum()) { + if (m_pStream->GetObjNum()) return m_pDocument->GetPageData()->GetImage(m_pStream); - } + CPDF_Image* pImage = new CPDF_Image(m_pDocument); - pImage->LoadImageF((CPDF_Stream*)((CPDF_Object*)m_pStream)->Clone(), - m_bInline); - if (m_bInline) { + pImage->LoadImageF(ToStream(m_pStream->Clone()), m_bInline); + if (m_bInline) pImage->SetInlineDict(ToDictionary(m_pInlineDict->Clone(TRUE))); - } + return pImage; } CPDF_Image::CPDF_Image(CPDF_Document* pDoc) { |