Nikolay Sivov
8630368afb
msxml3: Callback only if state really changed.
2010-10-08 11:56:45 +02:00
Nikolay Sivov
e1ca5965b8
msxml3: Implement ::abort().
2010-10-08 11:56:45 +02:00
Nikolay Sivov
25dc6c7c9e
msxml: Register XMLHTTP objects.
2010-10-08 11:56:45 +02:00
Nikolay Sivov
eebf331e89
msxml3: Implement ::get_responseText() for UTF-8 and UTF-16 (little endian) response encoding.
2010-10-07 12:00:27 +02:00
Nikolay Sivov
62656c57bf
msxml3: Store response data in a stream.
2010-10-07 12:00:27 +02:00
Nikolay Sivov
58bce9422e
msxml3: Implement ready state change callback.
2010-10-06 14:41:03 +02:00
Nikolay Sivov
7ff3446be5
msxml3: Accept versioned XMLHTTP CLSIDs.
2010-10-06 14:41:03 +02:00
Nikolay Sivov
59c5bd2956
msxml3: Don't fail trying to set NewParser property.
2010-10-06 14:41:03 +02:00
Nikolay Sivov
7e7b2a3f82
msxml3: Implemented ::get_status().
2010-10-05 13:05:14 +02:00
Nikolay Sivov
1441dc9400
msxml3: Silence more failed urlmon interface queries.
2010-10-05 13:05:08 +02:00
Nikolay Sivov
b36fe07a4d
msxml3: Store user defined request headers on transaction beginning.
2010-10-05 13:05:03 +02:00
Adam Martinson
4f78c04ec8
msxml3: XSLPattern support.
...
Parse XSLPattern queries and translate them into equivalent XPath queries.
XSLPattern built-in functions/operators are translated to their XPath
counterparts where applicable. If no direct XPath counterpart exists,
they are registered as custom XPath functions for the sake of speed where
possible. As a last resort, they are translated into compound XPath
expressions to accomplish the task, if more slowly.
If the parser encounters an error, the original XSLPattern query is
returned, as this is more likely to work than a mangled one.
2010-10-04 16:18:54 +02:00
Adam Martinson
ff644cb1b1
msxml3: Partial stub domdoc_validate().
2010-10-04 15:00:06 +02:00
Adam Martinson
6e6375344b
msxml3/tests: Tests for domdoc_validate().
2010-10-04 15:00:06 +02:00
Adam Martinson
679dbe6f31
msxml3: Stub domdoc_get_readyState().
2010-10-04 15:00:06 +02:00
Gerald Pfeifer
632a6c7904
msxml3: Use the existing READYSTATE type instead of creating our own enum READYSTATE (and mixing the two).
2010-10-04 14:59:59 +02:00
Nikolay Sivov
d69a7165be
msxml3: Add basic bind callback for moniker binding.
2010-10-04 14:52:12 +02:00
Adam Martinson
49fa9de580
msxml3: Implement preserveWhiteSpace property.
2010-10-01 14:21:26 +02:00
Alexandre Julliard
7afdf5d920
Make some variable declarations extern.
2010-10-01 13:42:22 +02:00
Alexandre Julliard
730f01801f
tests: Make some variables static.
2010-10-01 13:41:42 +02:00
Adam Martinson
776a8662f0
msxml3: Expose the XML parser SAX callback interface.
...
This eliminates a few function calls; libxml will call this indirectly
through the old method. By writing our own callback functions or
wrapping the default ones we can manipulate the xmlDoc as it's being
parsed, allowing us to match the way msxml parses.
2010-09-30 17:51:17 +02:00
Nikolay Sivov
1ac256a588
msxml3/httprequest: Implement IXMLHttpRequest::setRequestHeader().
2010-09-29 11:25:01 +02:00
Nikolay Sivov
2a85bc0367
msxml3/httprequest: Store passed data for IXMLHttpRequest::open().
2010-09-29 11:24:44 +02:00
Adam Martinson
1f93a47667
msxml3: Move domdoc properties into their own struct.
...
Unhooks domdoc properties from both the domdoc and xmlDoc.
After the domdoc <-> xmlDoc connection is no longer an open question,
the domdoc::properties pointer can be removed and rerouted through
xmlDoc::_private::properties as long as it's impossible to have a domdoc
with domdoc::node.node == NULL. With all of the checks for this, the
current code suggests that it's perfectly possible.
2010-09-29 11:14:35 +02:00
Adam Martinson
05f011b735
msxml3: Implement SelectionNamespaces property.
2010-09-29 11:12:47 +02:00
Adam Martinson
c515d384ef
msxml3/tests: Prevent a double-free in test_get_ownerDocument().
2010-09-28 17:33:17 +02:00
Nikolay Sivov
5a91bea3b2
msxml3/tests: Fix locale dependent string comparison.
2010-09-20 13:48:12 +02:00
Alexandre Julliard
81b8ee863e
makefiles: Add a standard header for all makefiles to replace the common variable initializations.
2010-09-19 12:36:48 +02:00
Nikolay Sivov
af4377f86a
msxml3/tests: Store test data as a table for ::nodeTypedValue() tests.
2010-09-18 13:03:51 +02:00
Nikolay Sivov
f2ed4de962
msxml3: Remove some useless initializers.
2010-09-18 13:03:44 +02:00
Nikolay Sivov
893e8a46b2
msxml3: Store selected query language in backend document instance.
2010-09-18 13:03:33 +02:00
Nikolay Sivov
a930084d86
msxml3: Fix ::selectSingleNode() behaviour on invalid arguments.
2010-09-18 13:03:26 +02:00
Nikolay Sivov
e5cd19a4cb
msxml3/tests: Don't raise a test error on first try to create a document.
2010-09-16 10:10:37 -05:00
Andrew Nguyen
c858e583cd
msxml3: Correct the prototype of DOMDocument_create when compiling without libxml2.
2010-09-15 11:29:03 -05:00
Paul Vriens
14316fc17f
msxml3/tests: Step to the next item on failure as well.
2010-09-15 10:34:45 -05:00
Nikolay Sivov
9c951e7520
msxml3: Properly set default value for SelectionLanguage property.
2010-09-14 09:42:56 -05:00
Nikolay Sivov
4e94abd710
msxml3: Fix IXMLDOMNode::get_namespaceURI() for empty URIs.
2010-09-14 09:42:43 -05:00
Nikolay Sivov
154c0828bf
msxml3: Fix IXMLDOMNode::get_prefix() for empty prefix.
2010-09-14 09:42:36 -05:00
Nikolay Sivov
8d055c7854
msxml3: Support elements with namespaces.
2010-09-14 09:42:29 -05:00
Jacek Caban
addefe4ce5
msxml3: Don't use xmlnode's IXMLDOMNode iface in insertBefore implementations.
2010-09-13 10:59:02 -05:00
Jacek Caban
e9ebd8c964
msxml3: Don't use xmlnode's IXMLDOMNode iface in get_attributes implementations.
2010-09-13 10:58:56 -05:00
Jacek Caban
55175042eb
msxml3: Don't use xmlnode's IXMLDOMNode iface in get_[previous|next]Sibling implementations.
2010-09-13 10:31:58 -05:00
Alistair Leslie-Hughes
5e5cd71ff1
msxml: Added support to create msxml4/6 interfaces.
2010-09-13 10:31:49 -05:00
Joris Huizer
33042ed137
msxml3/tests: Add lastChild tests.
2010-09-09 14:58:23 +02:00
Joris Huizer
37f61acb77
msxml3: Fix copy/paste error in get_lastChild functions.
2010-09-09 12:45:42 +02:00
Jacek Caban
4f210e21a5
msxml3: Don't use xmlnode's IXMLDOMNode iface in get_[first|last]Node implementations.
2010-09-08 19:49:30 +02:00
Jacek Caban
c8b15e90bd
msxml3: Don't use xmlnode's IXMLDOMNode iface in get_childNode implementations.
2010-09-08 19:49:30 +02:00
Jacek Caban
6e76c894e8
msxml3: Don't use xmlnode's IXMLDOMNode iface in get_nodeType and get_nodeParent implementations.
2010-09-07 16:01:32 +02:00
Jacek Caban
9413fab39e
msxml3: Don't use xmlnode's IXMLDOMNode iface in put_nodeValue implementations.
2010-09-07 16:01:26 +02:00
Nikolay Sivov
398e649414
msxml3/tests: Basic test for ::setAttributeNode().
2010-09-07 11:31:50 +02:00
Nikolay Sivov
97e78d9a0e
msxml3/tests: Some tests for ::get_ownerDocument() returned document instance.
2010-09-07 11:31:45 +02:00
Nikolay Sivov
0adfd6cf4c
msxml3/domdoc: Implement IXMLDOMNamedNodeMap::removeQualifiedItem().
2010-09-07 11:31:39 +02:00
Nikolay Sivov
e7bfb98e60
msxml3/tests: Add a helper to create document instance, remove useless output.
2010-09-07 11:30:18 +02:00
Jacek Caban
6ce537baac
msxml3: Don't use xmlnode's IXMLDOMNode iface in get_nodeValue implementations.
2010-09-06 16:13:22 +02:00
Jacek Caban
7a68fad273
msxml3: Don't use xmlnode's IXMLDOMNode iface in get_nodeName implementations.
2010-09-06 16:13:22 +02:00
Jacek Caban
27b4f11c0b
msxml3: Use xmlnode child object's IXMLDOMNode implementation as base interface.
...
The plan is to get rid of IXMLDOMNode interface in xmlnode object and use
proper inheritance.
2010-09-06 16:13:22 +02:00
Jacek Caban
8a82ae668a
msxml3: Use get_node_obj to get xmlnode from iface in replaceChild implementation.
2010-09-06 16:13:22 +02:00
Jacek Caban
4f61cd2840
msxml3: Use separate object for unknown node type implementation.
2010-09-06 16:13:22 +02:00
Jacek Caban
a92e95eab1
msxml3: Use fake IID to safely cast IXMLDOMNode interface to xmlnode object.
2010-09-06 16:13:21 +02:00
Jacek Caban
0670d092f1
msxml3: Added node_query_inerface function for common xmlnode child objects implementation.
2010-09-06 16:13:21 +02:00
Jacek Caban
f5348b25af
msxml3: Store outer iface as IXMLDOMNode instead of IUnknown in xmlnode.
2010-09-06 16:13:21 +02:00
Alexandre Goujon
8aa6ed97c8
msxml3/tests: Be more verbose when get_text fails.
2010-09-03 16:02:31 +02:00
Nikolay Sivov
0330332aef
msxml3: Implement IXMLDOMNamedNodeMap::getQualifiedItem().
2010-09-03 16:02:31 +02:00
Nikolay Sivov
c9b8f5d2ae
msxml3: Fix invalid parameter handling for IXMLDOMElement::getElementsByTagName().
2010-09-03 16:02:31 +02:00
Nikolay Sivov
1ce8be01f2
msxml3: Fix IXMLDOMDocument::getElementsByTagName() for some special cases.
2010-09-02 11:53:26 +02:00
Nikolay Sivov
2a5b375580
msxml3: Dump namespace aliases passed with SelectionNamespaces property.
2010-08-30 11:28:54 +02:00
Nikolay Sivov
fd35084294
msxml3: Silence FIXME for supported properties.
2010-08-30 11:28:46 +02:00
Nikolay Sivov
42020c9419
msxml3: Allow FreeThreadedDOMDocument40 to be created.
2010-08-30 11:28:41 +02:00
Nikolay Sivov
a0e7b3b93a
msxml3/tests: Tests for IXMLDOMText::splitText(), stub is extended a bit.
2010-08-30 11:28:36 +02:00
Nikolay Sivov
92a574b44b
msxml3: Implement IXMLDOMCDATASection::splitText().
2010-08-30 11:28:28 +02:00
Nikolay Sivov
62e521ad0d
msxml3: Add IXMLDOMDocument3 stub support.
2010-08-30 11:28:17 +02:00
Nikolay Sivov
25bce451af
msxml6: Add stub msxml6, forward DOMDocument60 creation to msxml3.
2010-08-30 11:27:52 +02:00
Francois Gouget
2dbe80bb7e
msxml3: Make parse_xml() static.
2010-08-26 13:44:44 +02:00
Paul Vriens
fa8f79feb8
msxml3: Ignore a property.
2010-07-28 16:28:20 +02:00
Michael Stefaniuc
ea1d37c568
msxml3: Remove the ignored common resource attributes.
2010-07-22 11:41:37 +02:00
Alexandre Julliard
b86d515ed6
dlls: Remove explicit imports of kernel32 and ntdll.
2010-07-21 17:38:36 +02:00
Nikolay Sivov
331e179632
msxml3: Speed up a IPersistStreamInit::Save() by querying for BSTR length.
2010-07-19 15:16:19 +02:00
Piotr Caban
7a22365674
msxml3: Improve bstr_from_xmlCharN implementation.
2010-07-19 14:38:15 +02:00
Piotr Caban
bf263947e7
msxml3: Improve QName_from_xmlChar implementation.
2010-07-19 14:38:15 +02:00
Piotr Caban
3bf94bed3f
msxml3: Correctly allocate namespaces stack in saxreader.
2010-07-19 14:38:15 +02:00
Andrey Turkin
1339267ee8
msxml3: Add test to highlight another difference between XSLPattern and XPath.
2010-07-05 13:24:35 +02:00
Nikolay Sivov
4edfeefa64
msxml3: Use proper pointer types for IPersistStreamInit methods.
2010-06-29 13:28:58 +02:00
Nikolay Sivov
6a07cfeb52
msxml3: Add support for IPersistStreamInit for IXMLDOMDocument.
2010-06-29 13:28:58 +02:00
Nikolay Sivov
d461d7d213
msxml3: Create additional node for xml declaration.
2010-06-28 16:58:38 +02:00
Piotr Caban
a42a0917cd
msxml3: Fix illegal memory access.
2010-06-28 11:43:10 +02:00
Nikolay Sivov
89a00ec3ac
msxml3/tests: A test to show difference in XPath and XSLPattern for node position.
2010-06-24 10:30:45 +02:00
Nikolay Sivov
16e465c7ae
msxml3: Don't free namespace data tracked in a tree.
...
Fixes regression from ea9a6a4b4e
.
2010-06-23 10:34:46 +02:00
Nikolay Sivov
15720f8141
msxml3: Accept CLSID_FreeThreadedDOMDocument30 in class factory.
2010-06-23 10:34:36 +02:00
Nikolay Sivov
d24d007fa5
msxml3: Silence a warning in ::get_baseName() for document nodes.
2010-06-23 10:34:28 +02:00
Nikolay Sivov
302fb5f15a
msxml3: Use vtable macros consistently, depending on pointer type.
2010-06-22 16:58:37 +02:00
Nikolay Sivov
ea9a6a4b4e
msxml3: Properly free namespace structure pointer.
2010-06-22 11:22:35 +02:00
Nikolay Sivov
94e88e6712
msxml3: Extend traces for inc/dec refs on libxml2 documents.
2010-06-21 16:48:21 +02:00
Nikolay Sivov
473c5c4cc0
msxml3: Don't crash on null pointer when doing ::Next() on a last child.
2010-06-21 12:25:44 +02:00
Nikolay Sivov
b00046ccc4
msxml3: Support xml:lang attribute in IXMLElement::getAttribute().
2010-06-21 12:25:31 +02:00
Nikolay Sivov
c4852be28e
msxml3: Don't force parser encoding when loading from file.
2010-06-21 11:47:34 +02:00
Andrew Nguyen
6002cb06fb
msxml3/tests: Correct the sense of a few test failure messages.
2010-06-14 15:42:21 +02:00
Andrew Nguyen
9f1fb46543
msxml3: Ignore the encoding attribute when loading a new XML document in IXMLDOMDocument::loadXML.
2010-06-14 15:42:19 +02:00
Andrew Nguyen
341f878cbc
msxml3: Add proper skips when msxml3 DOM interfaces are unavailable.
2010-06-14 15:42:16 +02:00
Nikolay Sivov
bc3337f86f
msxml3: Use defined macros to access internal XPath structures.
2010-06-14 14:14:16 +02:00
Nikolay Sivov
3611791117
msxml3: Avoid SysStringLen() testing for an empty string in ::createNode().
2010-06-14 14:14:16 +02:00
Michael Stefaniuc
49c5494ff8
msxml3: Remove redundant "not NULL" check of the punk arg.
2010-05-20 13:47:52 +02:00
Alistair Leslie-Hughes
8248040dbe
msxml3: Register classes.
2010-04-19 15:42:00 +02:00
André Hentschel
b7aec2a215
msxml3: Make xmlnode_get_specified a stub.
2010-03-31 11:47:23 +02:00
André Hentschel
20fbdfc3c2
msxml3: Make xmlnode_get_parsed a stub.
2010-03-31 11:47:19 +02:00
Alexandre Julliard
d3d2f4afce
msxml3: Remove unnecessary string constants.
2010-03-31 11:47:10 +02:00
Mikhail Maroukhine
88cca2cf76
msxml3: Fix compiler warnings with flag -Wcast-qual.
2010-03-29 12:14:53 +02:00
Paul Vriens
719d904e35
msxml3/tests: Skip some tests when network connection can't be made.
2010-03-26 17:05:30 +01:00
André Hentschel
acdce245ae
msxml3: Fix a typo in a comment.
2010-03-23 11:40:59 +01:00
Francois Gouget
3127501f86
msxml3: Add a trailing '\n' to a TRACE().
2010-03-22 10:48:33 +01:00
Alexandre Julliard
bef5645eb1
makefiles: Remove the no longer needed explicit separators for dependencies.
2010-03-16 13:28:19 +01:00
Nikolay Sivov
2060d80d24
msxml3: Treat input BSTR as general WCHAR string for ::loadXML().
2010-03-15 14:18:06 +01:00
Reece Dunn
47016df9b7
msxml3/tests: Improve the IObjectSecurity tests to cover msxml3 SP8+ behaviour.
2010-03-01 14:28:54 +01:00
Nikolay Sivov
d013991d55
msxml3: Simplify IXMLDOMElement_get_tagName(), add null check.
2010-02-22 11:41:05 +01:00
Alexandre Julliard
6164ce2d82
makefiles: Use the standard C_SRCS variable as the list of test files.
...
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Nikolay Sivov
7a38ecb0d6
msxml3: Avoid direct vtable members internal usage.
2010-02-19 13:07:11 +01:00
Nikolay Sivov
b679a690b4
msxml3: Accept IObjectSafety for query from IXMLDOMDocument, fix its implementation.
2010-02-19 13:07:05 +01:00
Nikolay Sivov
16785efc27
msxml3/tests: Fix leaks and wrong pointer use.
2010-02-17 16:30:26 +01:00
Nikolay Sivov
abe86a1ef9
msxml3: Use common format for TRACE() in DOM objects.
2010-02-17 09:42:50 +01:00
Nikolay Sivov
3d18a77ae7
msxml3: Get rid of libxml2 accessors in ::substringData() for Text, Comment and CDATA nodes.
2010-02-16 11:33:23 +01:00
Nikolay Sivov
19c30897d4
msxml3: Simplify ::appendData() for Text, Comment and CDATA nodes.
2010-02-16 11:33:11 +01:00
Nikolay Sivov
02066602b6
msxml3: Implement ::replaceData() for Text, Comment and CDATA nodes.
2010-02-16 11:33:03 +01:00
Nikolay Sivov
88d8218731
msxml3: Simplify ::insertData() for Text, Comment and CDATA nodes.
2010-02-16 11:32:55 +01:00
Nikolay Sivov
b8282638bb
msxml3: Use interface methods for ::get_length() calls.
2010-02-16 11:32:48 +01:00
Nikolay Sivov
c1464f8ab9
msxml3: Fix return value for IXMLDOMNode_put_nodeValue() for unsupported types.
2010-02-15 16:09:24 +01:00
Nikolay Sivov
5262c570f1
msxml3: Accept NODE_ENTITY_REFERENCE in ::createNode() and use it for ::createEntityReference().
2010-02-15 16:09:17 +01:00
Nikolay Sivov
20a240fe41
msxml3: Reimplement IXMLDOMDocument::createProcessingInstruction() on top of ::createNode().
2010-02-15 16:09:11 +01:00
Nikolay Sivov
f414d3cf60
msxml3: Reimplement IXMLDOMDocument::createAttribute() on top of ::createNode().
2010-02-15 16:09:05 +01:00
Nikolay Sivov
f0e885759e
msxml3: Reimplement IXMLDOMDocument::createCDATASection() on top ::createNode().
2010-02-15 16:08:59 +01:00
Nikolay Sivov
ce2372667e
msxml3: Fix IXMLDOMDocument::createElement(), cast from node to element isn't possible.
2010-02-15 16:08:53 +01:00
Nikolay Sivov
24e198e2ff
msxml3: Reimplement IXMLDOMDocument::createTextNode() on top of ::createNode().
2010-02-15 16:08:44 +01:00
Nikolay Sivov
035566802b
msxml3: Fix IXMLDOMDocument::createDocumentFragment(), can't use IXMLDOMNode*->IXMLDOMDocumentFragment* cast.
2010-02-15 16:08:39 +01:00
Nikolay Sivov
760f7ba724
msxml3: Reimplement IXMLDOMDocument::createComment() on top of ::createNode().
2010-02-15 16:08:29 +01:00
Alistair Leslie-Hughes
dd40448707
msxml4: Added support for SAXXMLReader40.
2010-02-15 16:07:59 +01:00
Nikolay Sivov
ca01a44164
msxml3: Reimplement IXMLDOMDocument::createElement() over ::createNode().
2010-02-12 14:49:11 +01:00
Nikolay Sivov
469b0ff6b5
msxml3/tests: Don't try to use wchar buffers as BSTR parameters.
2010-02-12 11:55:51 +01:00
Nikolay Sivov
f5a2f4a2b9
msxml3: Reimplement IXMLDOMDocument::createDocumentFragment() over ::createNode().
2010-02-12 11:55:40 +01:00
Nikolay Sivov
16d83dc7d4
msxml3: Support more node types in IXMLDOMDocument_createNode().
2010-02-12 11:55:29 +01:00
Nikolay Sivov
e2b727807d
msxml3: Check for Null out pointer in node creation (with tests).
2010-02-12 11:55:17 +01:00
Nikolay Sivov
875c9c71ab
msxml3: Accept PI node in on base name request.
2010-02-10 14:34:06 +01:00
Nikolay Sivov
b9d07c5ae5
msxml3/tests: Add a trivial test for IXMLDOMDocumentFragment_get_parentNode().
2010-02-10 11:32:58 +01:00
Nikolay Sivov
f65fd26fe1
msxml3: IXMLDOMAttribute shouldn't report its parent.
2010-02-10 11:32:53 +01:00
Nikolay Sivov
a9fc71b48e
msxml3: Support comment node type in IXMLDOMNode_get_baseName.
2010-02-09 17:13:38 +01:00
Alexandre Julliard
627c58dcb5
msxml3: Fix building with older libxml versions.
2010-02-09 17:13:36 +01:00
Nikolay Sivov
970ec3d699
msxml3: Create entity reference node properly.
2010-02-09 11:35:27 +01:00
Nikolay Sivov
07162a624e
msxml3: Create PI node properly.
2010-02-09 11:35:02 +01:00
Nikolay Sivov
afad45fffe
msxml3: Use libxml2 functionality to skip top XML declaration node while writing to file.
2010-02-08 17:14:34 +01:00
Nikolay Sivov
d8a9a691e6
msxml3: Use existing helpers for heap allocations.
2010-02-04 13:39:28 +01:00
Nikolay Sivov
bc3153affa
msxml4: Add self-registration for CLSID_DOMDocument40, accept it in classfactory.
2010-02-04 13:39:28 +01:00
Nikolay Sivov
d3aacce605
msxml3: Fix a debug channel and comment copypaste.
2010-02-03 15:50:58 +01:00
Nikolay Sivov
a03bc72690
msxml3: Implement IXMLDOMText::deleteData().
2010-01-29 14:59:02 +01:00