Commit Graph

898 Commits

Author SHA1 Message Date
Adam Martinson a1d69fcba7 msxml3: Add functions to get the dt:dt of a node. 2010-11-16 11:59:10 +01:00
Adam Martinson 4ec6da6ef1 msxml3: Add XDR datatypes enum and string table. 2010-11-16 11:59:04 +01:00
Adam Martinson b7cdaba817 msxml3: Move schema cache into the domdoc_properties struct. 2010-11-16 11:48:55 +01:00
Adam Martinson bc56bbfbb4 msxml3: Fix a datatypes.xsd oops. 2010-11-16 11:48:43 +01:00
Michael Stefaniuc fa4c8c0900 msxml3/tests: Remove redundant NULL check before SysFreeString (smatch). 2010-11-16 11:43:20 +01:00
Paul Vriens dc2306de5a msxml3/tests: Fix some test failures on Win98/WinMe. 2010-11-15 13:20:05 +01:00
Adam Martinson 2c451f869a msxml3: Use built-in urn:schemas-microsoft-com:datatypes schema for validation. 2010-11-15 13:19:57 +01:00
Adam Martinson 5fc439a7f8 msxml3: XDR schema support. 2010-11-15 13:03:06 +01:00
Adam Martinson 2a4c07a7e2 msxml3/tests: XDR schema tests. 2010-11-15 13:02:45 +01:00
Adam Martinson 89679f904a msxml3: Add urn:schemas-microsoft-com:datatypes schema. 2010-11-15 13:02:34 +01:00
Adam Martinson 82f73c8652 msxml3: Add our own xmlFirstElementChild() for older libxml2 versions. 2010-11-15 13:01:35 +01:00
Adam Martinson 865995cf1f msxml3: Store the DLL instance handle. 2010-11-15 13:00:12 +01:00
Nikolay Sivov 5240bae308 msxml3: Don't include assert.h where it's not used. 2010-11-12 11:39:27 +01:00
Nikolay Sivov 9ec17a841d msxml3: Fix a ::get_xml() for libxml2 without xmlSaveToBuffer. 2010-11-12 11:39:20 +01:00
Alexandre Julliard 1174beef2a include: Make msxml6.idl a copy of msxml2.idl instead of importing it. 2010-11-10 12:08:00 +01:00
Alexandre Julliard 6c90ebd5e5 include: Move coclass definitions to msxml2.idl. 2010-11-10 12:07:59 +01:00
Adam Martinson 7d37e7e6f6 msxml3/tests: Tests for node_get_dataType() with XDR schemas. 2010-11-09 11:46:34 +01:00
Nikolay Sivov 84aba12a28 msxml3: Dump set node value. 2010-11-09 11:45:04 +01:00
Nikolay Sivov ec1ab037c8 msxml3: Trace DOM document reference counts. 2010-11-09 11:44:56 +01:00
Nikolay Sivov 804c50fb6c msxml3: Use defined error code for no error case. 2010-11-09 11:44:53 +01:00
Nikolay Sivov 99e3873f30 msxml3: Fix duplicated declarations after document ::get_xml(). 2010-11-09 11:44:50 +01:00
Jacek Caban 8036509c09 msxml3: Don't use xmlnode's IXMLDOMNode iface in get_nodeTypeString implementations. 2010-11-08 11:56:13 +01:00
Nikolay Sivov e9e58f07d2 msxml3: Stub IXMLDOMDocumentType support. 2010-11-05 11:28:32 +01:00
Nikolay Sivov 6d48656fb2 msxml3: Don't force put_nodeValue return value. 2010-11-05 11:25:13 +01:00
Nikolay Sivov a353a91f32 msxml3: For tested cases use TRACE instead of FIXME. 2010-11-05 11:25:08 +01:00
Nikolay Sivov 8f976c5d53 msxml3: Encode special characters while setting attribute content. 2010-11-05 11:25:00 +01:00
Adam Martinson 85ced167bd msxml3: Fix node_get_text() whitespace handling. 2010-11-04 11:56:29 +01:00
Adam Martinson e95122162a msxml3: Move the whitespace preservation bool into the domdoc_properties struct. 2010-11-04 11:56:26 +01:00
Adam Martinson e16914963e msxml3: Implement XSLPattern collection methods. 2010-11-03 14:56:26 +01:00
Adam Martinson 42ccbc5132 msxml3: Add XSLPattern nodeType() method. 2010-11-03 14:50:43 +01:00
Adam Martinson 8401caae4c msxml3: Use libxml2 macros for XSLPattern method return values. 2010-11-03 14:50:36 +01:00
Adam Martinson c367215bbc msxml3: Implement domdoc schema validation. 2010-11-03 14:44:50 +01:00
Francois Gouget b990617a95 Assorted spelling fixes. 2010-11-02 13:16:57 +01:00
Francois Gouget e71dac1ead msxml3/tests: Small spelling fix in a nonexistent resource. 2010-11-02 13:16:29 +01:00
Francois Gouget 3e331731c9 msxml3/tests: Add a trailing '\n' to ok() calls. 2010-11-02 13:16:24 +01:00
Francois Gouget a034694ccd msxml3: Add a trailing '\n' to a FIXME() calls. 2010-11-02 13:16:19 +01:00
Adam Martinson 5c7bcdadcf msxml3: Add error code defines. 2010-11-02 12:51:51 +01:00
Adam Martinson bf11a93b05 msxml3: Add a function to validate a tree against a schema cache. 2010-11-02 12:51:01 +01:00
Nikolay Sivov 678fbc172c msxml3: Hint parser to use UTF-8 if it's specfied as BOM. 2010-11-01 12:41:24 +01:00
Nikolay Sivov 1e998bfc3f msxml3: Get rid of ::get_baseName() forward. 2010-11-01 12:39:21 +01:00
Nikolay Sivov 6556ad57f3 msxml3: Get rid of ::get_prefix() forward. 2010-11-01 12:39:15 +01:00
Nikolay Sivov 936d4cf911 msxml3: Get rid of ::cloneNode() forward. 2010-11-01 12:39:09 +01:00
Nikolay Sivov eef194a799 msxml3: Implement a trivial case of ::put_nodeTypedValue() for elements. 2010-11-01 12:39:02 +01:00
Adam Martinson e7d8bbab44 msxml3/tests: Add XSLPattern collection method tests. 2010-10-29 17:28:14 +02:00
Adam Martinson 77b7323b4f msxml3: Fix XSLPattern namespace handling. 2010-10-29 17:28:11 +02:00
Jacek Caban 6241b9d652 msxml3: Don't use xmlnode's IXMLDOMNode iface in get_xml implementations. 2010-10-29 16:31:42 +02:00
Nikolay Sivov b1aaa86e14 msxml3: Trace backend error even when user error handler is not set. 2010-10-29 14:21:48 +02:00
Nikolay Sivov 2329d2afdd msxml3: Build qualified name using libxml2 helper. 2010-10-29 14:21:41 +02:00
Nikolay Sivov 8f9804ed0b msxml3: Add a helper to check for error handler being set. 2010-10-29 14:21:32 +02:00
Nikolay Sivov 843bd25012 msxml3/tests: Some encoding switching tests. 2010-10-29 14:21:21 +02:00
Adam Martinson 35643b73e3 msxml3/tests: Add namespace-related XSLPattern tests. 2010-10-28 12:38:13 +02:00
Adam Martinson fec2199f4f msxml3: libxml2 error/warning callback functions. 2010-10-28 12:17:02 +02:00
Nikolay Sivov 850be4da8c msxml3: Actually try to use IPersistStream if it's available. 2010-10-28 11:42:08 +02:00
Nikolay Sivov 9a3bfce9c0 msxml3: Output error message for fatal errors. 2010-10-27 11:50:06 +02:00
Nikolay Sivov bd7787c12a msxml3: Fix a leak of error message BSTR. 2010-10-27 11:50:00 +02:00
Nikolay Sivov ecfc3f153c msxml3: Make line endings fix helper faster using BSTR stored length. 2010-10-27 11:49:54 +02:00
Nikolay Sivov adfd305821 msxml3: Handle passed BSTR argument as a WCHAR string in ::createProcessingInstruction(). 2010-10-26 13:01:41 +02:00
Michael Stefaniuc 6f0c968a7b msxml3/tests: Remove superfluous NULL check before free (Smatch). 2010-10-26 11:55:13 +02:00
Michael Stefaniuc 63bf86357e msxml3: Remove returns after returns (Smatch).
That's the intent of commit 70edd9a7.
2010-10-26 11:55:07 +02:00
Nikolay Sivov 21fddfe235 msxml3: Use proper naming and types for IObject* interfaces. 2010-10-25 14:30:59 +02:00
Nikolay Sivov b9956f75a9 msxml3: Add ::Unadvise(). 2010-10-25 14:30:40 +02:00
Nikolay Sivov fe3ff2ea9f msxml3: Add ::GetConnectionPointContainer(). 2010-10-25 14:30:35 +02:00
Nikolay Sivov eb23a4df25 msxml3: Add ::GetConnectionInterface(). 2010-10-25 14:30:31 +02:00
Nikolay Sivov 2a080e85e4 msxml3: Add stub IConnectionPoint, return points for supported IIDs. 2010-10-25 14:30:26 +02:00
Nikolay Sivov 0f2c996092 msxml3: Add stub connection container support. 2010-10-25 14:30:11 +02:00
Jacek Caban 70edd9a7fb msxml3: Don't use xmlnode's IXMLDOMNode iface for a few stub functions. 2010-10-25 13:52:51 +02:00
Jacek Caban 16647d42db msxml3: Remove unused xmlnode_* functions. 2010-10-25 13:52:50 +02:00
Adam Martinson fd9bcfcfe8 msxml3: Fix a regression bug in domdoc_loadXML().
Caused by commit 776a8662f0. Fixes parse
failures for BSTR's where encoding is explicitly UTF-16.
2010-10-21 16:15:15 +02:00
Adam Martinson 0abee56788 msxml3: IXMLDOMSchemaCollection2 stubs. 2010-10-21 16:14:57 +02:00
Adam Martinson 70f10e1a9f msxml3: Implement schema_cache_get(). 2010-10-21 16:14:44 +02:00
Adam Martinson d87b8b8eb9 msxml3: Implement schema_cache_get_namespaceURI(). 2010-10-21 16:14:36 +02:00
Adam Martinson 491ec41f5a msxml3: Implement schema_cache_addCollection(). 2010-10-21 16:14:26 +02:00
Adam Martinson eac6ed018c msxml3: Implement schema_cache_remove(). 2010-10-21 16:14:16 +02:00
Adam Martinson f8bdf8b5af msxml3: Implement schema_cache_get_length(). 2010-10-21 16:14:09 +02:00
Adam Martinson ab136a4fc2 msxml3/tests: Internal schema doc storage tests. 2010-10-21 16:14:00 +02:00
Nikolay Sivov 88adaa0617 msxml3: Partially implement ::setAttributeNode(). 2010-10-21 12:29:53 +02:00
Nikolay Sivov 514a5c091f msxml3: Silence urlmon query failures for IXMLDocument. 2010-10-20 18:37:09 +02:00
Nikolay Sivov 657f64dd06 msxml3: Add support for IStream destination in save(). 2010-10-20 18:37:09 +02:00
Nikolay Sivov b22149817d msxml3: Get rid of ::put_text() forward to IXMLDOMNode interface. 2010-10-19 10:14:11 +02:00
Nikolay Sivov 0f19df8b6a msxml3: Get rid of ::get_dataType() forward to IXMLDOMNode interface. 2010-10-19 10:14:08 +02:00
Adam Martinson 6e97fcf94e msxml3: IXMLDOMSchemaCollection/XMLSchemaCache backend.
Implemented on top of libxml's hash table.
2010-10-18 19:47:49 +02:00
Adam Martinson 8db0dd5335 msxml3: Add a function to initialize xmlDoc->_private data. 2010-10-18 19:47:49 +02:00
Adam Martinson 403201b87f msxml3: Prevent a memory leak if domdoc creation fails. 2010-10-15 11:32:31 +02:00
Jacek Caban 6d20b3f96a msxml3: Don't use xmlnode's IXMLDOMNode iface in replaceChild implementations. 2010-10-13 15:55:10 +02:00
Nikolay Sivov ac6671b7f3 msxml3: Fix response text conversion to WCHAR string. 2010-10-13 11:19:53 +02:00
Nikolay Sivov ace3a81d13 msxml3: Implement POST support with supplied body data. 2010-10-13 11:19:53 +02:00
Nikolay Sivov 45db1d1376 msxml3: Implement ::get_responseXML(). 2010-10-11 17:11:38 +02:00
Nikolay Sivov f0546a1961 msxml3: Implement ::get_responseBody(). 2010-10-08 11:56:45 +02:00
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