Cleanup nits from merge CL This CL cleans up the nits from https://codereview.chromium.org/2410893002/. Review-Url: https://codereview.chromium.org/2417633002
diff --git a/fpdfsdk/cpdfsdk_formfillenvironment.cpp b/fpdfsdk/cpdfsdk_formfillenvironment.cpp index b462454..71b83b2 100644 --- a/fpdfsdk/cpdfsdk_formfillenvironment.cpp +++ b/fpdfsdk/cpdfsdk_formfillenvironment.cpp
@@ -40,16 +40,13 @@ : m_pInfo(pFFinfo), m_pUnderlyingDoc(pDoc), m_pSysHandler(new CFX_SystemHandler(this)), - m_bChangeMask(FALSE), - m_bBeingDestroyed(FALSE) {} + m_bChangeMask(false), + m_bBeingDestroyed(false) {} CPDFSDK_FormFillEnvironment::~CPDFSDK_FormFillEnvironment() { - m_bBeingDestroyed = TRUE; + m_bBeingDestroyed = true; ClearAllFocusedAnnots(); - for (auto& it : m_pageMap) - delete it.second; - m_pageMap.clear(); // |m_pAnnotHandlerMgr| will try to access |m_pFormFiller| // when it cleans up. So, we must make sure it is cleaned up before @@ -584,16 +581,16 @@ CPDFSDK_PageView* CPDFSDK_FormFillEnvironment::GetPageView( UnderlyingPageType* pUnderlyingPage, - bool ReNew) { + bool renew) { auto it = m_pageMap.find(pUnderlyingPage); if (it != m_pageMap.end()) - return it->second; + return it->second.get(); - if (!ReNew) + if (!renew) return nullptr; CPDFSDK_PageView* pPageView = new CPDFSDK_PageView(this, pUnderlyingPage); - m_pageMap[pUnderlyingPage] = pPageView; + m_pageMap[pUnderlyingPage].reset(pPageView); // Delay to load all the annotations, to avoid endless loop. pPageView->LoadFXAnnots(); return pPageView; @@ -612,7 +609,7 @@ return nullptr; auto it = m_pageMap.find(pTempPage); - return it != m_pageMap.end() ? it->second : nullptr; + return it != m_pageMap.end() ? it->second.get() : nullptr; } void CPDFSDK_FormFillEnvironment::ProcJavascriptFun() { @@ -664,7 +661,7 @@ if (it == m_pageMap.end()) return; - CPDFSDK_PageView* pPageView = it->second; + CPDFSDK_PageView* pPageView = it->second.get(); if (pPageView->IsLocked() || pPageView->IsBeingDestroyed()) return; @@ -683,8 +680,6 @@ // Remove the page from the map to make sure we don't accidentally attempt // to use the |pPageView| while we're cleaning it up. m_pageMap.erase(it); - - delete pPageView; } UnderlyingPageType* CPDFSDK_FormFillEnvironment::GetPage(int nIndex) { @@ -700,7 +695,7 @@ void CPDFSDK_FormFillEnvironment::UpdateAllViews(CPDFSDK_PageView* pSender, CPDFSDK_Annot* pAnnot) { for (const auto& it : m_pageMap) { - CPDFSDK_PageView* pPageView = it.second; + CPDFSDK_PageView* pPageView = it.second.get(); if (pPageView != pSender) pPageView->UpdateView(pAnnot); }
diff --git a/fpdfsdk/cpdfsdk_formfillenvironment.h b/fpdfsdk/cpdfsdk_formfillenvironment.h index dd0e6bf..f59999f 100644 --- a/fpdfsdk/cpdfsdk_formfillenvironment.h +++ b/fpdfsdk/cpdfsdk_formfillenvironment.h
@@ -34,37 +34,7 @@ FPDF_FORMFILLINFO* pFFinfo); ~CPDFSDK_FormFillEnvironment(); - CPDFSDK_InterForm* GetInterForm(); - - // Gets the document object for the next layer down; for master this is - // a CPDF_Document, but for XFA it is a CPDFXFA_Document. - UnderlyingDocumentType* GetUnderlyingDocument() const { -#ifdef PDF_ENABLE_XFA - return GetXFADocument(); -#else // PDF_ENABLE_XFA - return GetPDFDocument(); -#endif // PDF_ENABLE_XFA - } - - // Gets the CPDF_Document, either directly in master, or from the - // CPDFXFA_Document for XFA. - CPDF_Document* GetPDFDocument() const { -#ifdef PDF_ENABLE_XFA - return m_pUnderlyingDoc ? m_pUnderlyingDoc->GetPDFDoc() : nullptr; -#else // PDF_ENABLE_XFA - return m_pUnderlyingDoc; -#endif // PDF_ENABLE_XFA - } - -#ifdef PDF_ENABLE_XFA - // Gets the XFA document directly (XFA-only). - CPDFXFA_Document* GetXFADocument() const { return m_pUnderlyingDoc; } - void ResetXFADocument() { m_pUnderlyingDoc = nullptr; } - - int GetPageViewCount() const { return m_pageMap.size(); } -#endif // PDF_ENABLE_XFA - - CPDFSDK_PageView* GetPageView(UnderlyingPageType* pPage, bool ReNew); + CPDFSDK_PageView* GetPageView(UnderlyingPageType* pPage, bool renew); CPDFSDK_PageView* GetPageView(int nIndex); CPDFSDK_PageView* GetCurrentView(); void RemovePageView(UnderlyingPageType* pPage); @@ -87,9 +57,9 @@ int GetPageCount() { return m_pUnderlyingDoc->GetPageCount(); } FX_BOOL GetPermissions(int nFlag); - FX_BOOL GetChangeMark() { return m_bChangeMask; } - void SetChangeMark() { m_bChangeMask = TRUE; } - void ClearChangeMark() { m_bChangeMask = FALSE; } + bool GetChangeMark() const { return m_bChangeMask; } + void SetChangeMark() { m_bChangeMask = true; } + void ClearChangeMark() { m_bChangeMask = false; } UnderlyingPageType* GetPage(int nIndex); @@ -130,7 +100,20 @@ float* fPosArray, int sizeOfArray); + UnderlyingDocumentType* GetUnderlyingDocument() const { + return m_pUnderlyingDoc; + } + #ifdef PDF_ENABLE_XFA + CPDF_Document* GetPDFDocument() const { + return m_pUnderlyingDoc ? m_pUnderlyingDoc->GetPDFDoc() : nullptr; + } + + CPDFXFA_Document* GetXFADocument() const { return m_pUnderlyingDoc; } + void ResetXFADocument() { m_pUnderlyingDoc = nullptr; } + + int GetPageViewCount() const { return m_pageMap.size(); } + void DisplayCaret(FPDF_PAGE page, FPDF_BOOL bVisible, double left, @@ -176,6 +159,8 @@ CFX_WideString GetLanguage(); void PageEvent(int iPageCount, uint32_t dwEventType) const; +#else // PDF_ENABLE_XFA + CPDF_Document* GetPDFDocument() const { return m_pUnderlyingDoc; } #endif // PDF_ENABLE_XFA int JS_appAlert(const FX_WCHAR* Msg, @@ -221,20 +206,21 @@ CPDFSDK_AnnotHandlerMgr* GetAnnotHandlerMgr(); // Creates if not present. IJS_Runtime* GetJSRuntime(); // Creates if not present. CPDFSDK_ActionHandler* GetActionHander(); // Creates if not present. + CPDFSDK_InterForm* GetInterForm(); // Creates if not present. private: std::unique_ptr<CPDFSDK_AnnotHandlerMgr> m_pAnnotHandlerMgr; std::unique_ptr<CPDFSDK_ActionHandler> m_pActionHandler; std::unique_ptr<IJS_Runtime> m_pJSRuntime; FPDF_FORMFILLINFO* const m_pInfo; - std::map<UnderlyingPageType*, CPDFSDK_PageView*> m_pageMap; + std::map<UnderlyingPageType*, std::unique_ptr<CPDFSDK_PageView>> m_pageMap; std::unique_ptr<CPDFSDK_InterForm> m_pInterForm; CPDFSDK_Annot::ObservedPtr m_pFocusAnnot; UnderlyingDocumentType* m_pUnderlyingDoc; std::unique_ptr<CFFL_InteractiveFormFiller> m_pFormFiller; std::unique_ptr<CFX_SystemHandler> m_pSysHandler; - FX_BOOL m_bChangeMask; - FX_BOOL m_bBeingDestroyed; + bool m_bChangeMask; + bool m_bBeingDestroyed; }; #endif // FPDFSDK_CPDFSDK_FORMFILLENVIRONMENT_H_