Index: core/fxcodec/codec/fx_codec_jbig.cpp |
diff --git a/core/fxcodec/codec/fx_codec_jbig.cpp b/core/fxcodec/codec/fx_codec_jbig.cpp |
index 8f2d07f49099579bb5ce5867a22162d06ad8f6c2..adc57fd1ad42a114659b334d630719b05ec542cb 100644 |
--- a/core/fxcodec/codec/fx_codec_jbig.cpp |
+++ b/core/fxcodec/codec/fx_codec_jbig.cpp |
@@ -9,32 +9,20 @@ |
#include <list> |
#include "core/fpdfapi/fpdf_parser/include/cpdf_stream_acc.h" |
+#include "core/fxcodec/include/JBig2_DocumentContext.h" |
#include "core/fxcodec/jbig2/JBig2_Context.h" |
#include "core/fxcodec/jbig2/JBig2_Image.h" |
#include "core/fxcrt/include/fx_memory.h" |
-// Holds per-document JBig2 related data. |
-class JBig2DocumentContext : public CFX_Deletable { |
- public: |
- std::list<CJBig2_CachePair>* GetSymbolDictCache() { |
- return &m_SymbolDictCache; |
- } |
- |
- ~JBig2DocumentContext() override { |
- for (auto it : m_SymbolDictCache) { |
- delete it.second; |
- } |
- } |
+JBig2_DocumentContext::JBig2_DocumentContext() {} |
- private: |
- std::list<CJBig2_CachePair> m_SymbolDictCache; |
-}; |
+JBig2_DocumentContext::~JBig2_DocumentContext() {} |
-JBig2DocumentContext* GetJBig2DocumentContext( |
- std::unique_ptr<CFX_Deletable>* pContextHolder) { |
- if (!pContextHolder->get()) |
- pContextHolder->reset(new JBig2DocumentContext()); |
- return static_cast<JBig2DocumentContext*>(pContextHolder->get()); |
+JBig2_DocumentContext* GetJBig2DocumentContext( |
+ std::unique_ptr<JBig2_DocumentContext>* pContextHolder) { |
+ if (!pContextHolder) |
+ pContextHolder->reset(new JBig2_DocumentContext()); |
+ return pContextHolder->get(); |
} |
CCodec_Jbig2Context::CCodec_Jbig2Context() |
@@ -52,7 +40,7 @@ CCodec_Jbig2Module::~CCodec_Jbig2Module() {} |
FXCODEC_STATUS CCodec_Jbig2Module::StartDecode( |
CCodec_Jbig2Context* pJbig2Context, |
- std::unique_ptr<CFX_Deletable>* pContextHolder, |
+ std::unique_ptr<JBig2_DocumentContext>* pContextHolder, |
uint32_t width, |
uint32_t height, |
CPDF_StreamAcc* src_stream, |
@@ -63,7 +51,7 @@ FXCODEC_STATUS CCodec_Jbig2Module::StartDecode( |
if (!pJbig2Context) |
return FXCODEC_STATUS_ERR_PARAMS; |
- JBig2DocumentContext* pJBig2DocumentContext = |
+ JBig2_DocumentContext* pJBig2DocumentContext = |
GetJBig2DocumentContext(pContextHolder); |
pJbig2Context->m_width = width; |
pJbig2Context->m_height = height; |