diff options
Diffstat (limited to 'fxjs/xfa/cjx_packet.cpp')
-rw-r--r-- | fxjs/xfa/cjx_packet.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/fxjs/xfa/cjx_packet.cpp b/fxjs/xfa/cjx_packet.cpp index bd39ec0538..c3d8dbbeba 100644 --- a/fxjs/xfa/cjx_packet.cpp +++ b/fxjs/xfa/cjx_packet.cpp @@ -6,10 +6,15 @@ #include "fxjs/xfa/cjx_packet.h" +#include <utility> #include <vector> +#include "core/fxcrt/xml/cfx_xmldocument.h" +#include "core/fxcrt/xml/cfx_xmltext.h" #include "fxjs/cfxjse_value.h" #include "fxjs/js_resources.h" +#include "xfa/fxfa/cxfa_ffdoc.h" +#include "xfa/fxfa/cxfa_ffnotify.h" #include "xfa/fxfa/parser/cxfa_packet.h" const CJX_MethodSpec CJX_Packet::MethodSpecs[] = { @@ -75,8 +80,13 @@ void CJX_Packet::content(CFXJSE_Value* pValue, CFX_XMLNode* pXMLNode = GetXFANode()->GetXMLMappingNode(); if (bSetting) { if (pXMLNode && pXMLNode->GetType() == FX_XMLNODE_Element) { - CFX_XMLElement* pXMLElement = static_cast<CFX_XMLElement*>(pXMLNode); - pXMLElement->SetTextData(pValue->ToWideString()); + auto* text = GetXFANode() + ->GetDocument() + ->GetNotify() + ->GetHDOC() + ->GetXMLDocument() + ->CreateNode<CFX_XMLText>(pValue->ToWideString()); + pXMLNode->AppendChild(text); } return; } |