Index: fpdfsdk/fpdfsave.cpp |
diff --git a/fpdfsdk/fpdfsave.cpp b/fpdfsdk/fpdfsave.cpp |
index 89b8b5839e6e55202884301642ac1f2f379cee21..cb01ab697b55fb102c7442207dcafcd049c3be86 100644 |
--- a/fpdfsdk/fpdfsave.cpp |
+++ b/fpdfsdk/fpdfsave.cpp |
@@ -176,14 +176,16 @@ bool SaveXFADocumentData(CPDFXFA_Context* pContext, |
// Datasets |
pChecksum->UpdateChecksum(pDsfileWrite.get()); |
pChecksum->FinishChecksum(); |
- CPDF_Dictionary* pDataDict = |
- new CPDF_Dictionary(pPDFDocument->GetByteStringPool()); |
+ auto pDataDict = pdfium::MakeUnique<CPDF_Dictionary>( |
+ pPDFDocument->GetByteStringPool()); |
if (iDataSetsIndex != -1) { |
- if (pDataSetsStream) |
- pDataSetsStream->InitStreamFromFile(pDsfileWrite.get(), pDataDict); |
+ if (pDataSetsStream) { |
+ pDataSetsStream->InitStreamFromFile(pDsfileWrite.get(), |
+ std::move(pDataDict)); |
+ } |
} else { |
CPDF_Stream* pData = pPDFDocument->NewIndirect<CPDF_Stream>(); |
- pData->InitStreamFromFile(pDsfileWrite.get(), pDataDict); |
+ pData->InitStreamFromFile(pDsfileWrite.get(), std::move(pDataDict)); |
iLast = pArray->GetCount() - 2; |
pArray->InsertNewAt<CPDF_String>(iLast, "datasets", false); |
pArray->InsertNewAt<CPDF_Reference>(iLast + 1, pPDFDocument, |
@@ -198,14 +200,16 @@ bool SaveXFADocumentData(CPDFXFA_Context* pContext, |
if (pXFADocView->GetDoc()->SavePackage(XFA_HASHCODE_Form, pfileWrite.get(), |
pChecksum.get()) && |
pfileWrite->GetSize() > 0) { |
- CPDF_Dictionary* pDataDict = |
- new CPDF_Dictionary(pPDFDocument->GetByteStringPool()); |
+ auto pDataDict = pdfium::MakeUnique<CPDF_Dictionary>( |
+ pPDFDocument->GetByteStringPool()); |
if (iFormIndex != -1) { |
- if (pFormStream) |
- pFormStream->InitStreamFromFile(pfileWrite.get(), pDataDict); |
+ if (pFormStream) { |
+ pFormStream->InitStreamFromFile(pfileWrite.get(), |
+ std::move(pDataDict)); |
+ } |
} else { |
CPDF_Stream* pData = pPDFDocument->NewIndirect<CPDF_Stream>(); |
- pData->InitStreamFromFile(pfileWrite.get(), pDataDict); |
+ pData->InitStreamFromFile(pfileWrite.get(), std::move(pDataDict)); |
iLast = pArray->GetCount() - 2; |
pArray->InsertNewAt<CPDF_String>(iLast, "form", false); |
pArray->InsertNewAt<CPDF_Reference>(iLast + 1, pPDFDocument, |