summaryrefslogtreecommitdiff
path: root/core/fxcodec/codec/fx_codec_jbig.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/fxcodec/codec/fx_codec_jbig.cpp')
-rw-r--r--core/fxcodec/codec/fx_codec_jbig.cpp32
1 files changed, 10 insertions, 22 deletions
diff --git a/core/fxcodec/codec/fx_codec_jbig.cpp b/core/fxcodec/codec/fx_codec_jbig.cpp
index 8f2d07f490..adc57fd1ad 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;