Convert GetSOMExpression methods to return WideString

Change-Id: I34eb40ff1c14e7b9362d4e52166243eacc6710da
Reviewed-on: https://pdfium-review.googlesource.com/22270
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
diff --git a/fxjs/cfxjse_engine.cpp b/fxjs/cfxjse_engine.cpp
index b9cd502..179866b 100644
--- a/fxjs/cfxjse_engine.cpp
+++ b/fxjs/cfxjse_engine.cpp
@@ -738,11 +738,9 @@
                                 lpNodeHelper->NodeIsProperty(refNode), true);
 }
 
-void CFXJSE_Engine::GetSomExpression(CXFA_Node* refNode,
-                                     WideString& wsExpression) {
+WideString CFXJSE_Engine::GetSomExpression(CXFA_Node* refNode) {
   CXFA_NodeHelper* lpNodeHelper = m_ResolveProcessor->GetNodeHelper();
-  wsExpression =
-      lpNodeHelper->GetNameExpression(refNode, true, XFA_LOGIC_Transparent);
+  return lpNodeHelper->GetNameExpression(refNode, true, XFA_LOGIC_Transparent);
 }
 
 void CFXJSE_Engine::SetNodesOfRunScript(std::vector<CXFA_Node*>* pArray) {
diff --git a/fxjs/cfxjse_engine.h b/fxjs/cfxjse_engine.h
index 777921d..0b360bd 100644
--- a/fxjs/cfxjse_engine.h
+++ b/fxjs/cfxjse_engine.h
@@ -70,7 +70,7 @@
 
   int32_t GetIndexByName(CXFA_Node* refNode);
   int32_t GetIndexByClassName(CXFA_Node* refNode);
-  void GetSomExpression(CXFA_Node* refNode, WideString& wsExpression);
+  WideString GetSomExpression(CXFA_Node* refNode);
 
   void SetNodesOfRunScript(std::vector<CXFA_Node*>* pArray);
   void AddNodesOfRunScript(CXFA_Node* pNode);
diff --git a/fxjs/xfa/cjx_tree.cpp b/fxjs/xfa/cjx_tree.cpp
index 1a20611..4a7a2fc 100644
--- a/fxjs/xfa/cjx_tree.cpp
+++ b/fxjs/xfa/cjx_tree.cpp
@@ -196,8 +196,7 @@
     return;
   }
 
-  WideString wsSOMExpression;
-  GetXFAObject()->GetSOMExpression(wsSOMExpression);
+  WideString wsSOMExpression = GetXFAObject()->GetSOMExpression();
   pValue->SetString(wsSOMExpression.UTF8Encode().AsStringView());
 }
 
diff --git a/xfa/fxfa/cxfa_fftextedit.cpp b/xfa/fxfa/cxfa_fftextedit.cpp
index 6f782b3..b97b218 100644
--- a/xfa/fxfa/cxfa_fftextedit.cpp
+++ b/xfa/fxfa/cxfa_fftextedit.cpp
@@ -200,9 +200,7 @@
   if (!pAppProvider)
     return;
 
-  WideString wsSomField;
-  pAcc->GetNode()->GetSOMExpression(wsSomField);
-
+  WideString wsSomField = pAcc->GetNode()->GetSOMExpression();
   pAppProvider->MsgBox(WideString::Format(L"%ls can not contain %ls",
                                           wsText.c_str(), wsSomField.c_str()),
                        pAppProvider->GetAppTitle(), XFA_MBICON_Error,
diff --git a/xfa/fxfa/parser/cxfa_object.cpp b/xfa/fxfa/parser/cxfa_object.cpp
index 93d3124..666186c 100644
--- a/xfa/fxfa/parser/cxfa_object.cpp
+++ b/xfa/fxfa/parser/cxfa_object.cpp
@@ -31,12 +31,12 @@
 
 CXFA_Object::~CXFA_Object() {}
 
-void CXFA_Object::GetSOMExpression(WideString& wsSOMExpression) {
+WideString CXFA_Object::GetSOMExpression() {
   CFXJSE_Engine* pScriptContext = m_pDocument->GetScriptContext();
   if (!pScriptContext)
-    return;
+    return WideString();
 
-  pScriptContext->GetSomExpression(ToNode(this), wsSOMExpression);
+  return pScriptContext->GetSomExpression(ToNode(this));
 }
 
 CXFA_Node* CXFA_Object::AsNode() {
diff --git a/xfa/fxfa/parser/cxfa_object.h b/xfa/fxfa/parser/cxfa_object.h
index ce9ce93..0b17273 100644
--- a/xfa/fxfa/parser/cxfa_object.h
+++ b/xfa/fxfa/parser/cxfa_object.h
@@ -75,7 +75,7 @@
   WideStringView GetClassName() const { return m_elementName; }
   uint32_t GetClassHashCode() const { return m_elementNameHash; }
 
-  void GetSOMExpression(WideString& wsSOMExpression);
+  WideString GetSOMExpression();
 
  protected:
   CXFA_Object(CXFA_Document* pDocument,