Change CXFA_Node::GetClassName to return
CXFA_Node::GetClassName currently takes an out parameter and returns void. This
CL updates the signature to return the value and require no parameters.
Review-Url: https://codereview.chromium.org/2104963002
diff --git a/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp b/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp
index 88e3527..37d52a9 100644
--- a/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp
+++ b/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp
@@ -6258,12 +6258,9 @@
CFX_WideString wsName;
if (CXFA_Node* pXFANode = pNode->AsNode())
pXFANode->GetAttribute(XFA_ATTRIBUTE_Name, wsName, FALSE);
+ if (wsName.IsEmpty())
+ wsName = FX_WSTRC(L"#") + pNode->GetClassName();
- if (wsName.IsEmpty()) {
- CFX_WideStringC className;
- pNode->GetClassName(className);
- wsName = FX_WSTRC(L"#") + className;
- }
wsSomExpression = wsName + wsSomExpression;
dFlags = XFA_RESOLVENODE_Siblings;
} else {
diff --git a/xfa/fxfa/parser/xfa_document_serialize.cpp b/xfa/fxfa/parser/xfa_document_serialize.cpp
index 52aa585..febfa3e 100644
--- a/xfa/fxfa/parser/xfa_document_serialize.cpp
+++ b/xfa/fxfa/parser/xfa_document_serialize.cpp
@@ -347,8 +347,7 @@
}
if (!wsChildren.IsEmpty() || !wsAttrs.IsEmpty() ||
pNode->HasAttribute(XFA_ATTRIBUTE_Name)) {
- CFX_WideStringC wsElement;
- pNode->GetClassName(wsElement);
+ CFX_WideStringC wsElement = pNode->GetClassName();
CFX_WideString wsName;
XFA_SaveAttribute(pNode, XFA_ATTRIBUTE_Name, FX_WSTRC(L"name"), TRUE,
wsName);
@@ -382,8 +381,7 @@
}
return;
}
- CFX_WideStringC wsElement;
- pNode->GetClassName(wsElement);
+ CFX_WideStringC wsElement = pNode->GetClassName();
pStream->WriteString(L"<", 1);
pStream->WriteString(wsElement.c_str(), wsElement.GetLength());
CFX_WideString wsOutput;
diff --git a/xfa/fxfa/parser/xfa_object.h b/xfa/fxfa/parser/xfa_object.h
index fd73d8b..a838b17 100644
--- a/xfa/fxfa/parser/xfa_object.h
+++ b/xfa/fxfa/parser/xfa_object.h
@@ -84,7 +84,7 @@
const CXFA_NodeList* AsNodeList() const;
XFA_Element GetElementType() const;
- void GetClassName(CFX_WideStringC& wsName) const;
+ CFX_WideStringC GetClassName() const;
uint32_t GetClassHashCode() const;
void Script_ObjectClass_ClassName(CFXJSE_Value* pValue,
FX_BOOL bSetting,
diff --git a/xfa/fxfa/parser/xfa_object_imp.cpp b/xfa/fxfa/parser/xfa_object_imp.cpp
index 04b33b4..99198d2 100644
--- a/xfa/fxfa/parser/xfa_object_imp.cpp
+++ b/xfa/fxfa/parser/xfa_object_imp.cpp
@@ -61,8 +61,8 @@
CXFA_Object::~CXFA_Object() {}
-void CXFA_Object::GetClassName(CFX_WideStringC& wsName) const {
- wsName = XFA_GetElementByID(GetElementType())->pName;
+CFX_WideStringC CXFA_Object::GetClassName() const {
+ return XFA_GetElementByID(GetElementType())->pName;
}
uint32_t CXFA_Object::GetClassHashCode() const {
@@ -77,8 +77,7 @@
FX_BOOL bSetting,
XFA_ATTRIBUTE eAttribute) {
if (!bSetting) {
- CFX_WideStringC className;
- GetClassName(className);
+ CFX_WideStringC className = GetClassName();
pValue->SetString(
FX_UTF8Encode(className.c_str(), className.GetLength()).AsStringC());
} else {
@@ -751,9 +750,8 @@
ThrowException(XFA_IDS_INVAlID_PROP_SET);
} else {
uint32_t dwFlag = XFA_RESOLVENODE_Siblings | XFA_RESOLVENODE_ALL;
- CFX_WideStringC wsName;
- GetClassName(wsName);
- CFX_WideString wsExpression = FX_WSTRC(L"#") + wsName + FX_WSTRC(L"[*]");
+ CFX_WideString wsExpression =
+ FX_WSTRC(L"#") + GetClassName() + FX_WSTRC(L"[*]");
Script_Som_ResolveNodeList(pValue, wsExpression, dwFlag);
}
}
@@ -965,11 +963,9 @@
CFDE_XMLNode* pThisXMLRoot = GetXMLMappingNode();
pFakeXMLRoot = pThisXMLRoot ? pThisXMLRoot->Clone(FALSE) : nullptr;
}
- if (!pFakeXMLRoot) {
- CFX_WideStringC wsClassName;
- GetClassName(wsClassName);
- pFakeXMLRoot = new CFDE_XMLElement(CFX_WideString(wsClassName));
- }
+ if (!pFakeXMLRoot)
+ pFakeXMLRoot = new CFDE_XMLElement(CFX_WideString(GetClassName()));
+
if (bIgnoreRoot) {
CFDE_XMLNode* pXMLChild = pXMLNode->GetNodeItem(CFDE_XMLNode::FirstChild);
while (pXMLChild) {
diff --git a/xfa/fxfa/parser/xfa_script_nodehelper.cpp b/xfa/fxfa/parser/xfa_script_nodehelper.cpp
index e866a19..3a80d89 100644
--- a/xfa/fxfa/parser/xfa_script_nodehelper.cpp
+++ b/xfa/fxfa/parser/xfa_script_nodehelper.cpp
@@ -284,13 +284,11 @@
return;
}
- CFX_WideStringC wsTagName;
CFX_WideString ws;
FX_BOOL bIsProperty = XFA_NodeIsProperty(refNode);
if (refNode->IsUnnamed() ||
(bIsProperty && refNode->GetElementType() != XFA_Element::PageSet)) {
- refNode->GetClassName(wsTagName);
- ws = wsTagName;
+ ws = refNode->GetClassName();
wsName.Format(L"#%s[%d]", ws.c_str(),
XFA_GetIndex(refNode, eLogicType, bIsProperty, TRUE));
return;