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 {