| Index: xfa/fxfa/parser/xfa_object_imp.cpp
|
| diff --git a/xfa/fxfa/parser/xfa_object_imp.cpp b/xfa/fxfa/parser/xfa_object_imp.cpp
|
| index 4c3ecd297687a93db7fc81949a0342d2996f17e9..1dd526571d4154de1df5a9912bb7c5c51bd6274e 100644
|
| --- a/xfa/fxfa/parser/xfa_object_imp.cpp
|
| +++ b/xfa/fxfa/parser/xfa_object_imp.cpp
|
| @@ -648,8 +648,8 @@ void CXFA_Node::Script_TreeClass_ResolveNode(CFXJSE_Arguments* pArguments) {
|
| XFA_RESOLVENODE_Properties | XFA_RESOLVENODE_Parent |
|
| XFA_RESOLVENODE_Siblings;
|
| XFA_RESOLVENODE_RS resoveNodeRS;
|
| - int32_t iRet = pScriptContext->ResolveObjects(refNode, wsExpression,
|
| - resoveNodeRS, dwFlag);
|
| + int32_t iRet = pScriptContext->ResolveObjects(
|
| + refNode, wsExpression.AsWideStringC(), resoveNodeRS, dwFlag);
|
| if (iRet < 1) {
|
| return FXJSE_Value_SetNull(pArguments->GetReturnValue());
|
| }
|
| @@ -708,7 +708,8 @@ void CXFA_Node::Script_Som_ResolveNodeList(FXJSE_HVALUE hValue,
|
| if (refNode == NULL) {
|
| refNode = this;
|
| }
|
| - pScriptContext->ResolveObjects(refNode, wsExpression, resoveNodeRS, dwFlag);
|
| + pScriptContext->ResolveObjects(refNode, wsExpression.AsWideStringC(),
|
| + resoveNodeRS, dwFlag);
|
| CXFA_ArrayNodeList* pNodeList = new CXFA_ArrayNodeList(m_pDocument);
|
| if (resoveNodeRS.dwFlags == XFA_RESOVENODE_RSTYPE_Nodes) {
|
| for (int32_t i = 0; i < resoveNodeRS.nodes.GetSize(); i++) {
|
| @@ -878,7 +879,7 @@ void CXFA_Node::Script_NodeClass_GetAttribute(CFXJSE_Arguments* pArguments) {
|
| wsExpression =
|
| CFX_WideString::FromUTF8(bsExpression, bsExpression.GetLength());
|
| CFX_WideString wsValue;
|
| - GetAttribute(wsExpression, wsValue);
|
| + GetAttribute(wsExpression.AsWideStringC(), wsValue);
|
| FXJSE_HVALUE hValue = pArguments->GetReturnValue();
|
| if (hValue) {
|
| FXJSE_Value_SetUTF8String(hValue, FX_UTF8Encode(wsValue).AsByteStringC());
|
| @@ -900,7 +901,8 @@ void CXFA_Node::Script_NodeClass_GetElement(CFXJSE_Arguments* pArguments) {
|
| if (iLength >= 2) {
|
| iValue = pArguments->GetInt32(1);
|
| }
|
| - const XFA_ELEMENTINFO* pElementInfo = XFA_GetElementByName(wsExpression);
|
| + const XFA_ELEMENTINFO* pElementInfo =
|
| + XFA_GetElementByName(wsExpression.AsWideStringC());
|
| CXFA_Node* pNode = GetProperty(iValue, pElementInfo->eName);
|
| FXJSE_Value_Set(pArguments->GetReturnValue(),
|
| m_pDocument->GetScriptContext()->GetJSValueFromMap(pNode));
|
| @@ -929,13 +931,14 @@ void CXFA_Node::Script_NodeClass_IsPropertySpecified(
|
| }
|
| FX_BOOL bHas = FALSE;
|
| const XFA_ATTRIBUTEINFO* pAttributeInfo =
|
| - XFA_GetAttributeByName(wsExpression);
|
| + XFA_GetAttributeByName(wsExpression.AsWideStringC());
|
| CFX_WideString wsValue;
|
| if (pAttributeInfo) {
|
| bHas = HasAttribute(pAttributeInfo->eName);
|
| }
|
| if (!bHas) {
|
| - const XFA_ELEMENTINFO* pElementInfo = XFA_GetElementByName(wsExpression);
|
| + const XFA_ELEMENTINFO* pElementInfo =
|
| + XFA_GetElementByName(wsExpression.AsWideStringC());
|
| bHas = (GetProperty(iIndex, pElementInfo->eName) != NULL);
|
| }
|
| FXJSE_HVALUE hValue = pArguments->GetReturnValue();
|
| @@ -1158,7 +1161,8 @@ void CXFA_Node::Script_NodeClass_SetAttribute(CFXJSE_Arguments* pArguments) {
|
| wsAttributeValue =
|
| CFX_WideString::FromUTF8(bsAttributeValue, bsAttributeValue.GetLength());
|
| wsAttribute = CFX_WideString::FromUTF8(bsAttribute, bsAttribute.GetLength());
|
| - SetAttribute(wsAttribute, wsAttributeValue, TRUE);
|
| + SetAttribute(wsAttribute.AsWideStringC(), wsAttributeValue.AsWideStringC(),
|
| + TRUE);
|
| }
|
| void CXFA_Node::Script_NodeClass_SetElement(CFXJSE_Arguments* pArguments) {
|
| int32_t iLength = pArguments->GetLength();
|
| @@ -1483,7 +1487,7 @@ void CXFA_Node::Script_Attribute_String(FXJSE_HVALUE hValue,
|
| FXJSE_Value_ToUTF8String(hValue, szValue);
|
| CFX_WideString wsValue =
|
| CFX_WideString::FromUTF8(szValue, szValue.GetLength());
|
| - SetAttribute(eAttribute, wsValue, TRUE);
|
| + SetAttribute(eAttribute, wsValue.AsWideStringC(), TRUE);
|
| if (eAttribute == XFA_ATTRIBUTE_Use && GetClassID() == XFA_ELEMENT_Desc) {
|
| CFX_WideString wsUseVal = wsValue, wsID, wsSOM;
|
| CXFA_Node* pTemplateNode =
|
| @@ -1508,12 +1512,12 @@ void CXFA_Node::Script_Attribute_String(FXJSE_HVALUE hValue,
|
| XFA_RESOLVENODE_Siblings;
|
| XFA_RESOLVENODE_RS resoveNodeRS;
|
| int32_t iRet = m_pDocument->GetScriptContext()->ResolveObjects(
|
| - pProtoRoot, wsSOM, resoveNodeRS, dwFlag);
|
| + pProtoRoot, wsSOM.AsWideStringC(), resoveNodeRS, dwFlag);
|
| if (iRet > 0 && resoveNodeRS.nodes[0]->IsNode()) {
|
| pProtoNode = resoveNodeRS.nodes[0]->AsNode();
|
| }
|
| } else if (!wsID.IsEmpty()) {
|
| - pProtoNode = m_pDocument->GetNodeByID(pProtoRoot, wsID);
|
| + pProtoNode = m_pDocument->GetNodeByID(pProtoRoot, wsID.AsWideStringC());
|
| }
|
| if (pProtoNode) {
|
| CXFA_Node* pHeadChild = GetNodeItem(XFA_NODEITEM_FirstChild);
|
| @@ -1701,7 +1705,8 @@ void CXFA_Node::Script_Som_DefaultValue(FXJSE_HVALUE hValue,
|
| pContainerWidgetData = GetContainerWidgetData();
|
| }
|
| if (pContainerWidgetData) {
|
| - pContainerWidgetData->GetFormatDataValue(wsNewValue, wsFormatValue);
|
| + pContainerWidgetData->GetFormatDataValue(wsNewValue.AsWideStringC(),
|
| + wsFormatValue);
|
| }
|
| SetScriptContent(wsNewValue, wsFormatValue, TRUE, TRUE);
|
| } else {
|
| @@ -1712,7 +1717,7 @@ void CXFA_Node::Script_Som_DefaultValue(FXJSE_HVALUE hValue,
|
| } else if (classID == XFA_ELEMENT_Integer) {
|
| FXJSE_Value_SetInteger(hValue, FXSYS_wtoi(content));
|
| } else if (classID == XFA_ELEMENT_Float || classID == XFA_ELEMENT_Decimal) {
|
| - CFX_Decimal decimal(content);
|
| + CFX_Decimal decimal(content.AsWideStringC());
|
| FXJSE_Value_SetFloat(hValue, (FX_FLOAT)(double)decimal);
|
| } else {
|
| FXJSE_Value_SetUTF8String(
|
| @@ -1748,7 +1753,8 @@ void CXFA_Node::Script_Boolean_Value(FXJSE_HVALUE hValue,
|
| CFX_WideString wsFormatValue(wsNewValue);
|
| CXFA_WidgetData* pContainerWidgetData = GetContainerWidgetData();
|
| if (pContainerWidgetData) {
|
| - pContainerWidgetData->GetFormatDataValue(wsNewValue, wsFormatValue);
|
| + pContainerWidgetData->GetFormatDataValue(wsNewValue.AsWideStringC(),
|
| + wsFormatValue);
|
| }
|
| SetScriptContent(wsNewValue, wsFormatValue, TRUE, TRUE);
|
| } else {
|
| @@ -1891,7 +1897,7 @@ void CXFA_Node::Script_Som_BorderWidth(FXJSE_HVALUE hValue,
|
| wsThickness = CFX_WideString::FromUTF8(bsValue, bsValue.GetLength());
|
| for (int32_t i = 0; i < iSize; ++i) {
|
| CXFA_Edge edge = border.GetEdge(i);
|
| - CXFA_Measurement thickness(wsThickness);
|
| + CXFA_Measurement thickness(wsThickness.AsWideStringC());
|
| edge.SetMSThickness(thickness);
|
| }
|
| } else {
|
| @@ -2008,7 +2014,8 @@ void CXFA_Node::Script_Field_DefaultValue(FXJSE_HVALUE hValue,
|
| CXFA_WidgetData* pContainerWidgetData = GetContainerWidgetData();
|
| CFX_WideString wsFormatText(wsNewText);
|
| if (pContainerWidgetData) {
|
| - pContainerWidgetData->GetFormatDataValue(wsNewText, wsFormatText);
|
| + pContainerWidgetData->GetFormatDataValue(wsNewText.AsWideStringC(),
|
| + wsFormatText);
|
| }
|
| SetScriptContent(wsNewText, wsFormatText, TRUE, TRUE);
|
| } else {
|
| @@ -2027,7 +2034,7 @@ void CXFA_Node::Script_Field_DefaultValue(FXJSE_HVALUE hValue,
|
| hValue,
|
| FX_UTF8Encode(content, content.GetLength()).AsByteStringC());
|
| } else {
|
| - CFX_Decimal decimal(content);
|
| + CFX_Decimal decimal(content.AsWideStringC());
|
| FXJSE_Value_SetFloat(hValue, (FX_FLOAT)(double)decimal);
|
| }
|
| } else if (pNode && pNode->GetClassID() == XFA_ELEMENT_Integer) {
|
| @@ -2035,7 +2042,7 @@ void CXFA_Node::Script_Field_DefaultValue(FXJSE_HVALUE hValue,
|
| } else if (pNode && pNode->GetClassID() == XFA_ELEMENT_Boolean) {
|
| FXJSE_Value_SetBoolean(hValue, FXSYS_wtoi(content) == 0 ? FALSE : TRUE);
|
| } else if (pNode && pNode->GetClassID() == XFA_ELEMENT_Float) {
|
| - CFX_Decimal decimal(content);
|
| + CFX_Decimal decimal(content.AsWideStringC());
|
| FXJSE_Value_SetFloat(hValue, (FX_FLOAT)(double)decimal);
|
| } else {
|
| FXJSE_Value_SetUTF8String(
|
| @@ -2183,7 +2190,8 @@ void CXFA_Node::Script_Field_ExecEvent(CFXJSE_Arguments* pArguments) {
|
| if (argc == 1) {
|
| CFX_ByteString eventString = pArguments->GetUTF8String(0);
|
| int32_t iRet = execSingleEventByName(
|
| - CFX_WideString::FromUTF8(eventString, eventString.GetLength()),
|
| + CFX_WideString::FromUTF8(eventString, eventString.GetLength())
|
| + .AsWideStringC(),
|
| XFA_ELEMENT_Field);
|
| if (eventString == "validate") {
|
| FXJSE_Value_SetBoolean(pArguments->GetReturnValue(),
|
| @@ -2263,7 +2271,7 @@ void CXFA_Node::Script_Field_BoundItem(CFXJSE_Arguments* pArguments) {
|
| CFX_WideString wsValue =
|
| CFX_WideString::FromUTF8(bsValue, bsValue.GetLength());
|
| CFX_WideString wsBoundValue;
|
| - pWidgetData->GetItemValue(wsValue, wsBoundValue);
|
| + pWidgetData->GetItemValue(wsValue.AsWideStringC(), wsBoundValue);
|
| FXJSE_HVALUE hValue = pArguments->GetReturnValue();
|
| if (hValue) {
|
| FXJSE_Value_SetUTF8String(hValue,
|
| @@ -2407,7 +2415,8 @@ void CXFA_Node::Script_ExclGroup_DefaultAndRawValue(FXJSE_HVALUE hValue,
|
| CFX_ByteString bsValue;
|
| FXJSE_Value_ToUTF8String(hValue, bsValue);
|
| pWidgetData->SetSelectedMemberByValue(
|
| - CFX_WideString::FromUTF8(bsValue, bsValue.GetLength()), TRUE, TRUE);
|
| + CFX_WideString::FromUTF8(bsValue, bsValue.GetLength()).AsWideStringC(),
|
| + TRUE, TRUE);
|
| } else {
|
| CFX_WideString wsValue = GetScriptContent(TRUE);
|
| XFA_VERSION curVersion = GetDocument()->GetCurVersionMode();
|
| @@ -2426,7 +2435,8 @@ void CXFA_Node::Script_ExclGroup_ExecEvent(CFXJSE_Arguments* pArguments) {
|
| if (argc == 1) {
|
| CFX_ByteString eventString = pArguments->GetUTF8String(0);
|
| execSingleEventByName(
|
| - CFX_WideString::FromUTF8(eventString, eventString.GetLength()),
|
| + CFX_WideString::FromUTF8(eventString, eventString.GetLength())
|
| + .AsWideStringC(),
|
| XFA_ELEMENT_ExclGroup);
|
| } else {
|
| ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execEvent");
|
| @@ -2446,7 +2456,8 @@ void CXFA_Node::Script_ExclGroup_SelectedMember(CFXJSE_Arguments* pArguments) {
|
| CFX_ByteString szName;
|
| szName = pArguments->GetUTF8String(0);
|
| pReturnNode = pWidgetData->SetSelectedMember(
|
| - CFX_WideString::FromUTF8(szName, szName.GetLength()));
|
| + CFX_WideString::FromUTF8(szName, szName.GetLength())
|
| + .AsWideStringC());
|
| }
|
| if (pReturnNode) {
|
| FXJSE_Value_Set(
|
| @@ -2622,7 +2633,8 @@ void CXFA_Node::Script_Subform_ExecEvent(CFXJSE_Arguments* pArguments) {
|
| if (argc == 1) {
|
| CFX_ByteString eventString = pArguments->GetUTF8String(0);
|
| execSingleEventByName(
|
| - CFX_WideString::FromUTF8(eventString, eventString.GetLength()),
|
| + CFX_WideString::FromUTF8(eventString, eventString.GetLength())
|
| + .AsWideStringC(),
|
| XFA_ELEMENT_Subform);
|
| } else {
|
| ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execEvent");
|
| @@ -2738,7 +2750,8 @@ void CXFA_Node::Script_Template_CreateNode(CFXJSE_Arguments* pArguments) {
|
| CFX_WideString::FromUTF8(bsNameSpace, bsNameSpace.GetLength());
|
| }
|
| }
|
| - const XFA_ELEMENTINFO* pElement = XFA_GetElementByName(strTagName);
|
| + const XFA_ELEMENTINFO* pElement =
|
| + XFA_GetElementByName(strTagName.AsWideStringC());
|
| CXFA_Node* pNewNode = CreateSamePacketNode(pElement->eName);
|
| if (!pNewNode) {
|
| FXJSE_Value_SetNull(pArguments->GetReturnValue());
|
| @@ -2746,7 +2759,8 @@ void CXFA_Node::Script_Template_CreateNode(CFXJSE_Arguments* pArguments) {
|
| if (!strName.IsEmpty()) {
|
| if (XFA_GetAttributeOfElement(pElement->eName, XFA_ATTRIBUTE_Name,
|
| XFA_XDPPACKET_UNKNOWN)) {
|
| - pNewNode->SetAttribute(XFA_ATTRIBUTE_Name, strName, TRUE);
|
| + pNewNode->SetAttribute(XFA_ATTRIBUTE_Name, strName.AsWideStringC(),
|
| + TRUE);
|
| if (pNewNode->GetPacketID() == XFA_XDPPACKET_Datasets) {
|
| pNewNode->CreateXMLMappingNode();
|
| }
|
| @@ -3504,7 +3518,8 @@ void CXFA_Node::Script_Form_Checksum(FXJSE_HVALUE hValue,
|
| CFX_ByteString bsChecksum;
|
| FXJSE_Value_ToUTF8String(hValue, bsChecksum);
|
| SetAttribute(XFA_ATTRIBUTE_Checksum,
|
| - CFX_WideString::FromUTF8(bsChecksum, bsChecksum.GetLength()));
|
| + CFX_WideString::FromUTF8(bsChecksum, bsChecksum.GetLength())
|
| + .AsWideStringC());
|
| } else {
|
| CFX_WideString wsChecksum;
|
| GetAttribute(XFA_ATTRIBUTE_Checksum, wsChecksum, FALSE);
|
| @@ -3964,7 +3979,7 @@ FX_BOOL CXFA_Node::SetCData(XFA_ATTRIBUTE eAttr,
|
| CFX_WideString* pClone = new CFX_WideString(wsValue);
|
| SetUserData(pKey, pClone, &deleteWideStringCallBack);
|
| } else {
|
| - SetMapModuleString(pKey, wsValue);
|
| + SetMapModuleString(pKey, wsValue.AsWideStringC());
|
| if (eAttr == XFA_ATTRIBUTE_Name)
|
| UpdateNameHash();
|
| }
|
| @@ -4321,7 +4336,8 @@ FX_BOOL CXFA_Node::SetScriptContent(const CFX_WideString& wsContent,
|
| GetAttribute(XFA_ATTRIBUTE_ContentType, wsContentType, FALSE);
|
| if (wsContentType == FX_WSTRC(L"text/html")) {
|
| wsContentType = FX_WSTRC(L"");
|
| - SetAttribute(XFA_ATTRIBUTE_ContentType, wsContentType);
|
| + SetAttribute(XFA_ATTRIBUTE_ContentType,
|
| + wsContentType.AsWideStringC());
|
| }
|
| }
|
| CXFA_Node* pContentRawDataNode = GetNodeItem(XFA_NODEITEM_FirstChild);
|
| @@ -5233,7 +5249,7 @@ void CXFA_Node::MoveBufferMapData(CXFA_Node* pDstModule, void* pKey) {
|
| CFX_WideString wsFormatValue(wsValue);
|
| CXFA_WidgetData* pWidgetData = pDstModule->GetContainerWidgetData();
|
| if (pWidgetData) {
|
| - pWidgetData->GetFormatDataValue(wsValue, wsFormatValue);
|
| + pWidgetData->GetFormatDataValue(wsValue.AsWideStringC(), wsFormatValue);
|
| }
|
| pDstModule->SetScriptContent(wsValue, wsFormatValue, TRUE, TRUE);
|
| }
|
| @@ -5332,8 +5348,8 @@ void CXFA_NodeList::Script_TreelistClass_NamedItem(
|
| int32_t argc = pArguments->GetLength();
|
| if (argc == 1) {
|
| CFX_ByteString szName = pArguments->GetUTF8String(0);
|
| - CXFA_Node* pNode =
|
| - NamedItem(CFX_WideString::FromUTF8(szName, szName.GetLength()));
|
| + CXFA_Node* pNode = NamedItem(
|
| + CFX_WideString::FromUTF8(szName, szName.GetLength()).AsWideStringC());
|
| if (!pNode) {
|
| return;
|
| }
|
|
|