diff options
author | tsepez <tsepez@chromium.org> | 2016-11-21 13:19:10 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-11-21 13:19:10 -0800 |
commit | 9e05ee1e7bfb74d56d69620ad1e72b03e29b9237 (patch) | |
tree | 12b47b617d99edc7bd2715292402b74e864e1fa4 /fpdfsdk/cpdfsdk_baannot.cpp | |
parent | aa3922dd713d480229408f3a0813b7dab9e8fd78 (diff) | |
download | pdfium-9e05ee1e7bfb74d56d69620ad1e72b03e29b9237.tar.xz |
Make CPDF_Stream() take unique_ptr's to its dictionary.
Review-Url: https://codereview.chromium.org/2520493002
Diffstat (limited to 'fpdfsdk/cpdfsdk_baannot.cpp')
-rw-r--r-- | fpdfsdk/cpdfsdk_baannot.cpp | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/fpdfsdk/cpdfsdk_baannot.cpp b/fpdfsdk/cpdfsdk_baannot.cpp index 9fb1e88a84..3eedf1502c 100644 --- a/fpdfsdk/cpdfsdk_baannot.cpp +++ b/fpdfsdk/cpdfsdk_baannot.cpp @@ -7,6 +7,7 @@ #include "fpdfsdk/cpdfsdk_baannot.h" #include <algorithm> +#include <utility> #include "core/fpdfapi/parser/cpdf_array.h" #include "core/fpdfapi/parser/cpdf_document.h" @@ -323,19 +324,16 @@ void CPDFSDK_BAAnnot::WriteAppearance(const CFX_ByteString& sAPType, CPDF_Dictionary* pStreamDict = pStream->GetDict(); if (!pStreamDict) { - pStreamDict = - new CPDF_Dictionary(m_pAnnot->GetDocument()->GetByteStringPool()); + auto pNewDict = pdfium::MakeUnique<CPDF_Dictionary>( + m_pAnnot->GetDocument()->GetByteStringPool()); + pStreamDict = pNewDict.get(); pStreamDict->SetNewFor<CPDF_Name>("Type", "XObject"); pStreamDict->SetNewFor<CPDF_Name>("Subtype", "Form"); pStreamDict->SetNewFor<CPDF_Number>("FormType", 1); - pStream->InitStream(nullptr, 0, pStreamDict); + pStream->InitStream(nullptr, 0, std::move(pNewDict)); } - - if (pStreamDict) { - pStreamDict->SetMatrixFor("Matrix", matrix); - pStreamDict->SetRectFor("BBox", rcBBox); - } - + pStreamDict->SetMatrixFor("Matrix", matrix); + pStreamDict->SetRectFor("BBox", rcBBox); pStream->SetData((uint8_t*)sContents.c_str(), sContents.GetLength()); } |