Document that CXFA_Document::GetLayoutProcessor() never returns null Then remove a number of unnecessary null tests by its callers. Change-Id: I705b19f0342f296440bd7adbc4b6aa77273053ab Reviewed-on: https://pdfium-review.googlesource.com/c/50094 Commit-Queue: Tom Sepez <tsepez@chromium.org> Reviewed-by: Lei Zhang <thestig@chromium.org>
diff --git a/fxjs/xfa/cjx_hostpseudomodel.cpp b/fxjs/xfa/cjx_hostpseudomodel.cpp index a86afdc..a1ca853 100644 --- a/fxjs/xfa/cjx_hostpseudomodel.cpp +++ b/fxjs/xfa/cjx_hostpseudomodel.cpp
@@ -299,9 +299,6 @@ } CXFA_LayoutProcessor* pDocLayout = GetDocument()->GetLayoutProcessor(); - if (!pDocLayout) - return CJS_Result::Success(); - CXFA_FFWidget* hWidget = XFA_GetWidgetFromLayoutItem(pDocLayout->GetLayoutItem(pNode)); if (!hWidget)
diff --git a/fxjs/xfa/cjx_instancemanager.cpp b/fxjs/xfa/cjx_instancemanager.cpp index b10b0e3..6d6de91 100644 --- a/fxjs/xfa/cjx_instancemanager.cpp +++ b/fxjs/xfa/cjx_instancemanager.cpp
@@ -103,12 +103,8 @@ pNotify->RunNodeInitialize(pNewInstance); } } - - CXFA_LayoutProcessor* pLayoutPro = GetDocument()->GetLayoutProcessor(); - if (pLayoutPro) { - pLayoutPro->AddChangedContainer( - ToNode(GetDocument()->GetXFAObject(XFA_HASHCODE_Form))); - } + GetDocument()->GetLayoutProcessor()->AddChangedContainer( + ToNode(GetDocument()->GetXFAObject(XFA_HASHCODE_Form))); return 0; } @@ -129,11 +125,8 @@ GetXFANode()->RemoveItem(pMoveInstance, false); GetXFANode()->InsertItem(pMoveInstance, iTo, iCount - 1, true); - CXFA_LayoutProcessor* pLayoutPro = GetDocument()->GetLayoutProcessor(); - if (pLayoutPro) { - pLayoutPro->AddChangedContainer( - ToNode(GetDocument()->GetXFAObject(XFA_HASHCODE_Form))); - } + GetDocument()->GetLayoutProcessor()->AddChangedContainer( + ToNode(GetDocument()->GetXFAObject(XFA_HASHCODE_Form))); return 0; } @@ -204,11 +197,8 @@ } } } - CXFA_LayoutProcessor* pLayoutPro = GetDocument()->GetLayoutProcessor(); - if (pLayoutPro) { - pLayoutPro->AddChangedContainer( - ToNode(GetDocument()->GetXFAObject(XFA_HASHCODE_Form))); - } + GetDocument()->GetLayoutProcessor()->AddChangedContainer( + ToNode(GetDocument()->GetXFAObject(XFA_HASHCODE_Form))); return CJS_Result::Success(); } @@ -255,12 +245,8 @@ CXFA_FFNotify* pNotify = GetDocument()->GetNotify(); if (pNotify) { pNotify->RunNodeInitialize(pNewInstance); - - CXFA_LayoutProcessor* pLayoutPro = GetDocument()->GetLayoutProcessor(); - if (pLayoutPro) { - pLayoutPro->AddChangedContainer( - ToNode(GetDocument()->GetXFAObject(XFA_HASHCODE_Form))); - } + GetDocument()->GetLayoutProcessor()->AddChangedContainer( + ToNode(GetDocument()->GetXFAObject(XFA_HASHCODE_Form))); } CFXJSE_Value* value = @@ -305,11 +291,8 @@ CXFA_FFNotify* pNotify = GetDocument()->GetNotify(); if (pNotify) { pNotify->RunNodeInitialize(pNewInstance); - CXFA_LayoutProcessor* pLayoutPro = GetDocument()->GetLayoutProcessor(); - if (pLayoutPro) { - pLayoutPro->AddChangedContainer( - ToNode(GetDocument()->GetXFAObject(XFA_HASHCODE_Form))); - } + GetDocument()->GetLayoutProcessor()->AddChangedContainer( + ToNode(GetDocument()->GetXFAObject(XFA_HASHCODE_Form))); } CFXJSE_Value* value =
diff --git a/fxjs/xfa/cjx_layoutpseudomodel.cpp b/fxjs/xfa/cjx_layoutpseudomodel.cpp index a12adb6..401daa0 100644 --- a/fxjs/xfa/cjx_layoutpseudomodel.cpp +++ b/fxjs/xfa/cjx_layoutpseudomodel.cpp
@@ -97,9 +97,6 @@ } int32_t iIndex = params.size() >= 3 ? runtime->ToInt32(params[2]) : 0; CXFA_LayoutProcessor* pDocLayout = GetDocument()->GetLayoutProcessor(); - if (!pDocLayout) - return CJS_Result::Success(); - CXFA_ContentLayoutItem* pLayoutItem = ToContentLayoutItem(pDocLayout->GetLayoutItem(pNode)); if (!pLayoutItem) @@ -163,9 +160,6 @@ CJS_Result CJX_LayoutPseudoModel::NumberedPageCount(CFX_V8* runtime, bool bNumbered) { CXFA_LayoutProcessor* pDocLayout = GetDocument()->GetLayoutProcessor(); - if (!pDocLayout) - return CJS_Result::Success(); - int32_t iPageCount = 0; int32_t iPageNum = pDocLayout->CountPages(); if (bNumbered) { @@ -202,9 +196,6 @@ return CJS_Result::Success(); CXFA_LayoutProcessor* pDocLayout = GetDocument()->GetLayoutProcessor(); - if (!pDocLayout) - return CJS_Result::Success(); - CXFA_ContentLayoutItem* pLayoutItem = ToContentLayoutItem(pDocLayout->GetLayoutItem(pNode)); if (!pLayoutItem) @@ -376,9 +367,6 @@ return CJS_Result::Success(); CXFA_LayoutProcessor* pDocLayout = GetDocument()->GetLayoutProcessor(); - if (!pDocLayout) - return CJS_Result::Success(); - auto pArrayNodeList = pdfium::MakeUnique<CXFA_ArrayNodeList>(GetDocument()); pArrayNodeList->SetArrayNodeList( GetObjArray(pDocLayout, iIndex, wsType, bOnPageArea)); @@ -484,9 +472,6 @@ return CJS_Result::Success(runtime->NewNumber(0)); CXFA_LayoutProcessor* pDocLayout = GetDocument()->GetLayoutProcessor(); - if (!pDocLayout) - return CJS_Result::Success(); - CXFA_ContentLayoutItem* pLayoutItem = ToContentLayoutItem(pDocLayout->GetLayoutItem(pNode)); if (!pLayoutItem)
diff --git a/xfa/fxfa/cxfa_ffnotify.cpp b/xfa/fxfa/cxfa_ffnotify.cpp index ce81cdc..588f0d9 100644 --- a/xfa/fxfa/cxfa_ffnotify.cpp +++ b/xfa/fxfa/cxfa_ffnotify.cpp
@@ -412,8 +412,7 @@ void CXFA_FFNotify::OnContainerChanged(CXFA_Node* pNode) { CXFA_LayoutProcessor* pLayout = m_pDoc->GetXFADoc()->GetLayoutProcessor(); - if (pLayout) - pLayout->AddChangedContainer(pNode); + pLayout->AddChangedContainer(pNode); } void CXFA_FFNotify::OnChildAdded(CXFA_Node* pSender) {
diff --git a/xfa/fxfa/parser/cxfa_document.cpp b/xfa/fxfa/parser/cxfa_document.cpp index f3f3890..454a51c 100644 --- a/xfa/fxfa/parser/cxfa_document.cpp +++ b/xfa/fxfa/parser/cxfa_document.cpp
@@ -1815,8 +1815,7 @@ if (bDoDataMerge) DoDataMerge(); - CXFA_LayoutProcessor* pLayoutProcessor = GetLayoutProcessor(); - pLayoutProcessor->SetForceReLayout(true); + GetLayoutProcessor()->SetForceReLayout(true); } CXFA_Node* CXFA_Document::GetGlobalBinding(uint32_t dwNameHash) {
diff --git a/xfa/fxfa/parser/cxfa_document.h b/xfa/fxfa/parser/cxfa_document.h index a57f7ef..4a57a177 100644 --- a/xfa/fxfa/parser/cxfa_document.h +++ b/xfa/fxfa/parser/cxfa_document.h
@@ -60,17 +60,19 @@ ~CXFA_Document() override; CFXJSE_Engine* InitScriptContext(CJS_Runtime* fxjs_runtime); + CFXJSE_Engine* GetScriptContext() const; - CXFA_Node* GetRoot() const { return m_pRootNode; } CXFA_FFNotify* GetNotify() const { return notify_.Get(); } CXFA_LocaleMgr* GetLocaleMgr(); CXFA_Object* GetXFAObject(XFA_HashCode wsNodeNameHash); CXFA_Node* GetNodeByID(CXFA_Node* pRoot, WideStringView wsID) const; CXFA_Node* GetNotBindNode( const std::vector<UnownedPtr<CXFA_Object>>& arrayNodes) const; - CXFA_LayoutProcessor* GetLayoutProcessor(); - CFXJSE_Engine* GetScriptContext() const; + // Creates if not present, never returns NULL. + CXFA_LayoutProcessor* GetLayoutProcessor(); + + CXFA_Node* GetRoot() const { return m_pRootNode; } void SetRoot(CXFA_Node* pNewRoot) { m_pRootNode = pNewRoot; } bool HasFlag(uint32_t dwFlag) const {