| Index: core/fxcodec/codec/fx_codec_flate.cpp
|
| diff --git a/core/fxcodec/codec/fx_codec_flate.cpp b/core/fxcodec/codec/fx_codec_flate.cpp
|
| index c5611cc27a14b9aa59333c1592dfd5d2b0749aea..d01b40f3181fed77fdd151721ddb67278218bc4b 100644
|
| --- a/core/fxcodec/codec/fx_codec_flate.cpp
|
| +++ b/core/fxcodec/codec/fx_codec_flate.cpp
|
| @@ -8,9 +8,11 @@
|
|
|
| #include <algorithm>
|
| #include <memory>
|
| +#include <utility>
|
|
|
| #include "core/fxcodec/fx_codec.h"
|
| #include "core/fxcrt/fx_ext.h"
|
| +#include "third_party/base/ptr_util.h"
|
| #include "third_party/zlib_v128/zlib.h"
|
|
|
| extern "C" {
|
| @@ -771,7 +773,7 @@ uint32_t CCodec_FlateScanlineDecoder::GetSrcOffset() {
|
| return FPDFAPI_FlateGetTotalIn(m_pFlate);
|
| }
|
|
|
| -CCodec_ScanlineDecoder* CCodec_FlateModule::CreateDecoder(
|
| +std::unique_ptr<CCodec_ScanlineDecoder> CCodec_FlateModule::CreateDecoder(
|
| const uint8_t* src_buf,
|
| uint32_t src_size,
|
| int width,
|
| @@ -782,11 +784,12 @@ CCodec_ScanlineDecoder* CCodec_FlateModule::CreateDecoder(
|
| int Colors,
|
| int BitsPerComponent,
|
| int Columns) {
|
| - CCodec_FlateScanlineDecoder* pDecoder = new CCodec_FlateScanlineDecoder;
|
| + auto pDecoder = pdfium::MakeUnique<CCodec_FlateScanlineDecoder>();
|
| pDecoder->Create(src_buf, src_size, width, height, nComps, bpc, predictor,
|
| Colors, BitsPerComponent, Columns);
|
| - return pDecoder;
|
| + return std::move(pDecoder);
|
| }
|
| +
|
| uint32_t CCodec_FlateModule::FlateOrLZWDecode(bool bLZW,
|
| const uint8_t* src_buf,
|
| uint32_t src_size,
|
|
|