summaryrefslogtreecommitdiff
path: root/fxjs/cfxjse_engine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'fxjs/cfxjse_engine.cpp')
-rw-r--r--fxjs/cfxjse_engine.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/fxjs/cfxjse_engine.cpp b/fxjs/cfxjse_engine.cpp
index 179866b555..535ec41160 100644
--- a/fxjs/cfxjse_engine.cpp
+++ b/fxjs/cfxjse_engine.cpp
@@ -351,10 +351,12 @@ void CFXJSE_Engine::NormalPropertySetter(CFXJSE_Value* pOriginalValue,
CXFA_Node* pNode = ToNode(pObject);
CXFA_Node* pPropOrChild = nullptr;
XFA_Element eType = CXFA_Node::NameToElement(wsPropName);
- if (eType != XFA_Element::Unknown)
- pPropOrChild = pNode->JSObject()->GetProperty<CXFA_Node>(0, eType, true);
- else
+ if (eType != XFA_Element::Unknown) {
+ pPropOrChild =
+ pNode->JSObject()->GetOrCreateProperty<CXFA_Node>(0, eType);
+ } else {
pPropOrChild = pNode->GetFirstChildByName(wsPropName.AsStringView());
+ }
if (pPropOrChild) {
const XFA_SCRIPTATTRIBUTEINFO* lpAttrInfo = XFA_GetScriptAttributeByName(