Convert CXML_Parser::GetAttrValue out param to return

Change-Id: I92420cb9333ad79246a855b0af9a27348b27ceb0
Reviewed-on: https://pdfium-review.googlesource.com/22312
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
diff --git a/core/fxcrt/xml/cxml_parser.cpp b/core/fxcrt/xml/cxml_parser.cpp
index 76463bb..ae5fd6d 100644
--- a/core/fxcrt/xml/cxml_parser.cpp
+++ b/core/fxcrt/xml/cxml_parser.cpp
@@ -266,19 +266,20 @@
   return code;
 }
 
-void CXML_Parser::GetAttrValue(WideString& value) {
+WideString CXML_Parser::GetAttrValue() {
   m_nOffset = m_nBufferOffset + static_cast<FX_FILESIZE>(m_dwIndex);
   if (IsEOF())
-    return;
+    return WideString();
 
   CFX_UTF8Decoder decoder;
-  uint8_t mark = 0, ch = 0;
+  uint8_t mark = 0;
+  uint8_t ch = 0;
   do {
     while (m_dwIndex < m_dwBufferSize) {
       ch = m_pBuffer[m_dwIndex];
       if (mark == 0) {
         if (ch != '\'' && ch != '"')
-          return;
+          return WideString();
 
         mark = ch;
         m_dwIndex++;
@@ -291,10 +292,8 @@
 
       if (ch == '&') {
         decoder.AppendCodePoint(GetCharRef());
-        if (IsEOF()) {
-          value = decoder.GetResult();
-          return;
-        }
+        if (IsEOF())
+          return WideString(decoder.GetResult());
       } else {
         decoder.Input(ch);
       }
@@ -303,7 +302,7 @@
     if (ch == mark || m_dwIndex < m_dwBufferSize || IsEOF())
       break;
   } while (ReadNextBlock());
-  value = decoder.GetResult();
+  return WideString(decoder.GetResult());
 }
 
 void CXML_Parser::GetTagName(bool bStartTag,
@@ -407,8 +406,7 @@
       if (IsEOF())
         break;
 
-      WideString attr_value;
-      GetAttrValue(attr_value);
+      WideString attr_value = GetAttrValue();
       pElement->SetAttribute(attr_space, attr_name, attr_value);
     }
     m_nOffset = m_nBufferOffset + static_cast<FX_FILESIZE>(m_dwIndex);
diff --git a/core/fxcrt/xml/cxml_parser.h b/core/fxcrt/xml/cxml_parser.h
index 04e5af5..a6f1303 100644
--- a/core/fxcrt/xml/cxml_parser.h
+++ b/core/fxcrt/xml/cxml_parser.h
@@ -27,7 +27,7 @@
   bool HaveAvailData();
   void SkipWhiteSpaces();
   void GetName(ByteString* space, ByteString* name);
-  void GetAttrValue(WideString& value);
+  WideString GetAttrValue();
   uint32_t GetCharRef();
   void GetTagName(bool bStartTag,
                   bool* bEndTag,