msxml3: Added support to create an Attribute in createNode.
This commit is contained in:
parent
0435574aed
commit
d659e63d73
@ -1224,6 +1224,17 @@ static HRESULT WINAPI domdoc_createNode(
|
|||||||
*node = create_node(xmlnode);
|
*node = create_node(xmlnode);
|
||||||
TRACE("created %p\n", xmlnode);
|
TRACE("created %p\n", xmlnode);
|
||||||
break;
|
break;
|
||||||
|
case NODE_ATTRIBUTE:
|
||||||
|
xmlnode = (xmlNode *)xmlNewProp(NULL, xml_name, NULL);
|
||||||
|
if(xmlnode)
|
||||||
|
{
|
||||||
|
xmlnode->doc = get_doc( This );
|
||||||
|
|
||||||
|
*node = (IXMLDOMNode*)create_attribute(xmlnode);
|
||||||
|
}
|
||||||
|
|
||||||
|
TRACE("created %p\n", xmlnode);
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
FIXME("unhandled node type %d\n", node_type);
|
FIXME("unhandled node type %d\n", node_type);
|
||||||
|
@ -1491,6 +1491,24 @@ static void test_create(void)
|
|||||||
VariantClear(&var);
|
VariantClear(&var);
|
||||||
SysFreeString(name);
|
SysFreeString(name);
|
||||||
|
|
||||||
|
/* Create an Attribute */
|
||||||
|
V_VT(&var) = VT_I4;
|
||||||
|
V_I4(&var) = NODE_ATTRIBUTE;
|
||||||
|
str = SysAllocString( szAttribute );
|
||||||
|
r = IXMLDOMDocument_createNode( doc, var, str, NULL, &node );
|
||||||
|
ok( r == S_OK, "returns %08x\n", r );
|
||||||
|
ok( node != NULL, "node was null\n");
|
||||||
|
SysFreeString(str);
|
||||||
|
|
||||||
|
if(r == S_OK)
|
||||||
|
{
|
||||||
|
r = IXMLDOMNode_get_nodeTypeString(node, &str);
|
||||||
|
ok( r == S_OK, "returns %08x\n", r );
|
||||||
|
ok( !lstrcmpW( str, _bstr_("attribute") ), "incorrect nodeTypeString string\n");
|
||||||
|
SysFreeString(str);
|
||||||
|
IXMLDOMNode_Release( node );
|
||||||
|
}
|
||||||
|
|
||||||
IXMLDOMElement_Release( element );
|
IXMLDOMElement_Release( element );
|
||||||
IXMLDOMNode_Release( root );
|
IXMLDOMNode_Release( root );
|
||||||
IXMLDOMDocument_Release( doc );
|
IXMLDOMDocument_Release( doc );
|
||||||
|
Loading…
x
Reference in New Issue
Block a user