diff options
Diffstat (limited to 'xfa')
-rw-r--r-- | xfa/fxfa/parser/cxfa_document.cpp | 7 | ||||
-rw-r--r-- | xfa/fxfa/parser/cxfa_document_parser.cpp | 8 | ||||
-rw-r--r-- | xfa/fxfa/parser/cxfa_node.cpp | 7 | ||||
-rw-r--r-- | xfa/fxfa/parser/xfa_utils.cpp | 15 |
4 files changed, 13 insertions, 24 deletions
diff --git a/xfa/fxfa/parser/cxfa_document.cpp b/xfa/fxfa/parser/cxfa_document.cpp index 5a85482b17..3e8046677a 100644 --- a/xfa/fxfa/parser/cxfa_document.cpp +++ b/xfa/fxfa/parser/cxfa_document.cpp @@ -539,10 +539,9 @@ void CreateDataBinding(CXFA_Node* pFormNode, false); } } else { - CFX_XMLNode* pXMLNode = pDataNode->GetXMLMappingNode(); - ASSERT(pXMLNode->GetType() == FX_XMLNODE_Element); - static_cast<CFX_XMLElement*>(pXMLNode)->SetAttribute( - L"xfa:dataNode", L"dataGroup"); + CFX_XMLElement* pElement = + ToXMLElement(pDataNode->GetXMLMappingNode()); + pElement->SetAttribute(L"xfa:dataNode", L"dataGroup"); } } else if (!wsValue.IsEmpty()) { pDataNode->JSObject()->SetAttributeValue( diff --git a/xfa/fxfa/parser/cxfa_document_parser.cpp b/xfa/fxfa/parser/cxfa_document_parser.cpp index 8e5ff9fbde..27d80cde15 100644 --- a/xfa/fxfa/parser/cxfa_document_parser.cpp +++ b/xfa/fxfa/parser/cxfa_document_parser.cpp @@ -669,11 +669,9 @@ CXFA_Node* CXFA_DocumentParser::ParseAsXDPPacket_Data( if (pParentXMLNode) pParentXMLNode->RemoveChildNode(pXMLDocumentNode); - ASSERT(pXMLDocumentNode->GetType() == FX_XMLNODE_Element); - if (pXMLDocumentNode->GetType() == FX_XMLNODE_Element) { - static_cast<CFX_XMLElement*>(pXMLDocumentNode) - ->RemoveAttribute(L"xmlns:xfa"); - } + CFX_XMLElement* pElement = ToXMLElement(pXMLDocumentNode); + pElement->RemoveAttribute(L"xmlns:xfa"); + // The node was either removed from the parent above, or already has no // parent so we can take ownership. pDataElement->AppendChild(pXMLDocumentNode); diff --git a/xfa/fxfa/parser/cxfa_node.cpp b/xfa/fxfa/parser/cxfa_node.cpp index 6d45eb8f61..5f919b7b14 100644 --- a/xfa/fxfa/parser/cxfa_node.cpp +++ b/xfa/fxfa/parser/cxfa_node.cpp @@ -2712,11 +2712,10 @@ void CXFA_Node::SetImageEdit(const WideString& wsContentType, CXFA_Node* pHrefNode = pBind->GetFirstChild(); if (pHrefNode) { pHrefNode->JSObject()->SetCData(XFA_Attribute::Value, wsHref, false, false); - } else { - CFX_XMLNode* pXMLNode = pBind->GetXMLMappingNode(); - ASSERT(pXMLNode && pXMLNode->GetType() == FX_XMLNODE_Element); - static_cast<CFX_XMLElement*>(pXMLNode)->SetAttribute(L"href", wsHref); + return; } + CFX_XMLElement* pElement = ToXMLElement(pBind->GetXMLMappingNode()); + pElement->SetAttribute(L"href", wsHref); } CXFA_FFWidget* CXFA_Node::GetNextWidget(CXFA_FFWidget* pWidget) { diff --git a/xfa/fxfa/parser/xfa_utils.cpp b/xfa/fxfa/parser/xfa_utils.cpp index b42da0b4a1..54cca88409 100644 --- a/xfa/fxfa/parser/xfa_utils.cpp +++ b/xfa/fxfa/parser/xfa_utils.cpp @@ -497,20 +497,13 @@ void XFA_DataExporter_DealWithDataGroupNode(CXFA_Node* pDataNode) { if (pDataNode->GetElementType() != XFA_Element::DataGroup) return; + CFX_XMLElement* pElement = ToXMLElement(pDataNode->GetXMLMappingNode()); if (iChildNum > 0) { - CFX_XMLNode* pXMLNode = pDataNode->GetXMLMappingNode(); - ASSERT(pXMLNode->GetType() == FX_XMLNODE_Element); - CFX_XMLElement* pXMLElement = static_cast<CFX_XMLElement*>(pXMLNode); - if (pXMLElement->HasAttribute(L"xfa:dataNode")) - pXMLElement->RemoveAttribute(L"xfa:dataNode"); - + if (pElement->HasAttribute(L"xfa:dataNode")) + pElement->RemoveAttribute(L"xfa:dataNode"); return; } - - CFX_XMLNode* pXMLNode = pDataNode->GetXMLMappingNode(); - ASSERT(pXMLNode->GetType() == FX_XMLNODE_Element); - static_cast<CFX_XMLElement*>(pXMLNode)->SetAttribute(L"xfa:dataNode", - L"dataGroup"); + pElement->SetAttribute(L"xfa:dataNode", L"dataGroup"); } void XFA_DataExporter_RegenerateFormFile( |