From 0a476d22c89eb99d36dfd6c9955dd12d1513a870 Mon Sep 17 00:00:00 2001 From: Bruce Dawson Date: Tue, 23 Dec 2014 12:21:02 -0800 Subject: XFA: merge patch from CL 733693003, getting rid of more casts Getting rid of more (FX_LPCWSTR) casts and fixing two bugs revealed by this. Since casts to FX_LPCWSTR have been shown to hide bugs I tried removing more of them, targeting those places where a cast was used to force a conversion from CFX_WideString to FX_LPCWSTR, replacing these casts with calls to the newly added .c_str() function. This revealed two places where the cast was hiding a bug -- where ->c_str() was required instead! This removes ~33 FX_LPCWSTR casts and there are ~31 left, many of which will go away in some future change. Also includes this change: Removing unnecessary casts from wchar_t* to wchar_t*, by various names. Original patch from Bruce Dawson(brucedawson@chromium.org) TBR=bo_xu@foxitsoftware.com, tsepez@chromium.org Review URL: https://codereview.chromium.org/811593007 --- core/src/fxcrt/fx_xml_parser.cpp | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) (limited to 'core/src/fxcrt/fx_xml_parser.cpp') diff --git a/core/src/fxcrt/fx_xml_parser.cpp b/core/src/fxcrt/fx_xml_parser.cpp index ea471d4792..8049a5587e 100644 --- a/core/src/fxcrt/fx_xml_parser.cpp +++ b/core/src/fxcrt/fx_xml_parser.cpp @@ -670,18 +670,13 @@ FX_BOOL CXML_Element::GetAttrValue(FX_BSTR name, CFX_WideString& attribute) cons { CFX_ByteStringC bsSpace, bsName; FX_XML_SplitQualifiedName(name, bsSpace, bsName); - const CFX_WideString* pValue = m_AttrMap.Lookup(bsSpace, bsName); - if (pValue) { - attribute = CFX_WideString((FX_LPCWSTR)*pValue, pValue->GetLength()); - return TRUE; - } - return FALSE; + return GetAttrValue(bsSpace, bsName, attribute); } FX_BOOL CXML_Element::GetAttrValue(FX_BSTR space, FX_BSTR name, CFX_WideString& attribute) const { const CFX_WideString* pValue = m_AttrMap.Lookup(space, name); if (pValue) { - attribute = CFX_WideString((FX_LPCWSTR)*pValue, pValue->GetLength()); + attribute = *pValue; return TRUE; } return FALSE; -- cgit v1.2.3