diff options
author | Nicolas Pena <npm@chromium.org> | 2017-07-13 10:06:15 -0400 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-07-13 14:29:34 +0000 |
commit | 17453d03c3bdd18a893ae86058a6184939aee026 (patch) | |
tree | 2a87278c98e851744f20cd9aaa1460f849ef097e /core/fxcodec/jbig2/JBig2_SddProc.h | |
parent | 360d1fce569b57aa2c487f6e171ba19b9dc8885e (diff) | |
download | pdfium-17453d03c3bdd18a893ae86058a6184939aee026.tar.xz |
More unique_ptrs in JBig2 code
This CL makes CJBig2_Segment own the results: symbol, pattern, huffman,
and huffman. This causes a lot more unique_ptr usage in JBig2 code.
Change-Id: I1f0a5bfaaf85053658b467bef5325c72d1f496c7
Reviewed-on: https://pdfium-review.googlesource.com/7690
Commit-Queue: Nicolás Peña <npm@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Diffstat (limited to 'core/fxcodec/jbig2/JBig2_SddProc.h')
-rw-r--r-- | core/fxcodec/jbig2/JBig2_SddProc.h | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/core/fxcodec/jbig2/JBig2_SddProc.h b/core/fxcodec/jbig2/JBig2_SddProc.h index 20e0569935..80b988ef98 100644 --- a/core/fxcodec/jbig2/JBig2_SddProc.h +++ b/core/fxcodec/jbig2/JBig2_SddProc.h @@ -7,6 +7,7 @@ #ifndef CORE_FXCODEC_JBIG2_JBIG2_SDDPROC_H_ #define CORE_FXCODEC_JBIG2_JBIG2_SDDPROC_H_ +#include <memory> #include <vector> #include "core/fxcodec/jbig2/JBig2_ArithDecoder.h" @@ -19,13 +20,15 @@ class CJBig2_SymbolDict; class CJBig2_SDDProc { public: - CJBig2_SymbolDict* decode_Arith(CJBig2_ArithDecoder* pArithDecoder, - std::vector<JBig2ArithCtx>* gbContext, - std::vector<JBig2ArithCtx>* grContext); - - CJBig2_SymbolDict* decode_Huffman(CJBig2_BitStream* pStream, - std::vector<JBig2ArithCtx>* gbContext, - std::vector<JBig2ArithCtx>* grContext); + std::unique_ptr<CJBig2_SymbolDict> decode_Arith( + CJBig2_ArithDecoder* pArithDecoder, + std::vector<JBig2ArithCtx>* gbContext, + std::vector<JBig2ArithCtx>* grContext); + + std::unique_ptr<CJBig2_SymbolDict> decode_Huffman( + CJBig2_BitStream* pStream, + std::vector<JBig2ArithCtx>* gbContext, + std::vector<JBig2ArithCtx>* grContext); bool SDHUFF; bool SDREFAGG; |