| Index: core/fpdfapi/page/cpdf_image.h
|
| diff --git a/core/fpdfapi/page/cpdf_image.h b/core/fpdfapi/page/cpdf_image.h
|
| index 7058019ba3956283b28527852470c9d7b10ca6be..72de0d8cef71838a7baaff3b62f8951bbd63ccdb 100644
|
| --- a/core/fpdfapi/page/cpdf_image.h
|
| +++ b/core/fpdfapi/page/cpdf_image.h
|
| @@ -28,12 +28,13 @@ class IFX_Pause;
|
| class CPDF_Image {
|
| public:
|
| explicit CPDF_Image(CPDF_Document* pDoc);
|
| - CPDF_Image(CPDF_Document* pDoc, CPDF_Stream* pStream, bool bInline);
|
| + CPDF_Image(CPDF_Document* pDoc, UniqueStream pStream);
|
| + CPDF_Image(CPDF_Document* pDoc, uint32_t dwStreamObjNum);
|
| ~CPDF_Image();
|
|
|
| CPDF_Image* Clone();
|
|
|
| - CPDF_Dictionary* GetInlineDict() const { return m_pInlineDict; }
|
| + CPDF_Dictionary* GetInlineDict() const { return m_pDict; }
|
| CPDF_Stream* GetStream() const { return m_pStream; }
|
| CPDF_Dictionary* GetDict() const {
|
| return m_pStream ? m_pStream->GetDict() : nullptr;
|
| @@ -44,7 +45,7 @@ class CPDF_Image {
|
| int32_t GetPixelHeight() const { return m_Height; }
|
| int32_t GetPixelWidth() const { return m_Width; }
|
|
|
| - bool IsInline() const { return m_bInline; }
|
| + bool IsInline() const { return !!m_pOwnedStream; }
|
| bool IsMask() const { return m_bIsMask; }
|
| bool IsInterpol() const { return m_bInterpolate; }
|
|
|
| @@ -54,7 +55,6 @@ class CPDF_Image {
|
| uint32_t GroupFamily = 0,
|
| FX_BOOL bLoadMask = FALSE) const;
|
|
|
| - void SetInlineDict(CPDF_Dictionary* pDict) { m_pInlineDict = pDict; }
|
| void SetImage(const CFX_DIBitmap* pDIBitmap, int32_t iCompress);
|
| void SetJpegImage(IFX_FileRead* pFile);
|
|
|
| @@ -69,22 +69,24 @@ class CPDF_Image {
|
| CFX_DIBSource* DetachBitmap();
|
| CFX_DIBSource* DetachMask();
|
|
|
| - CFX_DIBSource* m_pDIBSource;
|
| - CFX_DIBSource* m_pMask;
|
| - uint32_t m_MatteColor;
|
| + CFX_DIBSource* m_pDIBSource = nullptr;
|
| + CFX_DIBSource* m_pMask = nullptr;
|
| + uint32_t m_MatteColor = 0;
|
|
|
| private:
|
| + void FinishInitialization();
|
| CPDF_Dictionary* InitJPEG(uint8_t* pData, uint32_t size);
|
|
|
| - CPDF_Stream* m_pStream;
|
| - const bool m_bInline;
|
| - CPDF_Dictionary* m_pInlineDict;
|
| - int32_t m_Height;
|
| - int32_t m_Width;
|
| - bool m_bIsMask;
|
| - bool m_bInterpolate;
|
| + int32_t m_Height = 0;
|
| + int32_t m_Width = 0;
|
| + bool m_bIsMask = false;
|
| + bool m_bInterpolate = false;
|
| CPDF_Document* const m_pDocument;
|
| - CPDF_Dictionary* m_pOC;
|
| + CPDF_Stream* m_pStream = nullptr;
|
| + CPDF_Dictionary* m_pDict = nullptr;
|
| + UniqueStream m_pOwnedStream;
|
| + UniqueDictionary m_pOwnedDict;
|
| + CPDF_Dictionary* m_pOC = nullptr;
|
| };
|
|
|
| #endif // CORE_FPDFAPI_PAGE_CPDF_IMAGE_H_
|
|
|