diff options
Diffstat (limited to 'core/fpdfapi/page/fpdf_page_func.cpp')
-rw-r--r-- | core/fpdfapi/page/fpdf_page_func.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/core/fpdfapi/page/fpdf_page_func.cpp b/core/fpdfapi/page/fpdf_page_func.cpp index 9be1edb7ff..bc66adf726 100644 --- a/core/fpdfapi/page/fpdf_page_func.cpp +++ b/core/fpdfapi/page/fpdf_page_func.cpp @@ -90,10 +90,10 @@ class CPDF_PSFunc : public CPDF_Function { }; bool CPDF_PSFunc::v_Init(CPDF_Object* pObj) { - CPDF_StreamAcc acc; - acc.LoadAllData(pObj->AsStream(), false); - return m_PS.Parse(reinterpret_cast<const char*>(acc.GetData()), - acc.GetSize()); + auto pAcc = pdfium::MakeRetain<CPDF_StreamAcc>(pObj->AsStream()); + pAcc->LoadAllData(false); + return m_PS.Parse(reinterpret_cast<const char*>(pAcc->GetData()), + pAcc->GetSize()); } bool CPDF_PSFunc::v_Call(float* inputs, float* results) const { @@ -487,8 +487,8 @@ bool CPDF_SampledFunc::v_Init(CPDF_Object* pObj) { return false; m_SampleMax = 0xffffffff >> (32 - m_nBitsPerSample); - m_pSampleStream = pdfium::MakeUnique<CPDF_StreamAcc>(); - m_pSampleStream->LoadAllData(pStream, false); + m_pSampleStream = pdfium::MakeRetain<CPDF_StreamAcc>(pStream); + m_pSampleStream->LoadAllData(false); FX_SAFE_UINT32 nTotalSampleBits = 1; m_EncodeInfo.resize(m_nInputs); for (uint32_t i = 0; i < m_nInputs; i++) { |