Commit Graph

205 Commits

Author SHA1 Message Date
Jacek Caban a3d78064d9 xmllite: Fixed buffer handling in reader_parse_reference.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-20 14:03:51 +01:00
Jacek Caban 68aeee4d79 xmllite: Return WC_E_SYNTAX if there is unexpected data in the end of the stream.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-20 14:03:49 +01:00
Nikolay Sivov fc68269a52 xmllite/tests: Added missing return value check (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-20 13:22:49 +01:00
Nikolay Sivov d7057a34b3 xmllite/reader: For elements without a prefix return same string for both local and qualified names.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-17 15:54:16 +01:00
Nikolay Sivov 876de4a73d xmllite/reader: Reset reader nesting depth on error.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-13 19:28:35 +01:00
Nikolay Sivov ec9e05c27c xmllite/reader: Enter error state on parsing error.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-13 19:28:32 +01:00
Nikolay Sivov b115e9675f xmllite/reader: Improve returned position for whitespace text nodes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-10 10:03:52 +01:00
Nikolay Sivov 9685fec174 xmllite/reader: Improve line number updating when switching to the next line.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-10 10:03:50 +01:00
Nikolay Sivov 79a65678fc xmllite/reader: Fix position methods return values in closed reader state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-10 10:03:48 +01:00
Nikolay Sivov 62a41d035c xmllite/reader: Return correct error for multiple colons in qualified name.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-10 10:03:46 +01:00
Nikolay Sivov 3b83a44639 xmllite/reader: Explicitly return empty string as qualified name for some node types.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-10 10:03:44 +01:00
Nikolay Sivov 52f91932ac xmllite/reader: Explicitly return empty static string as local name for nodes without names.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-10 10:03:42 +01:00
Nikolay Sivov 65e62c3308 xmllite/reader: Fix reader position returned for xml declaration node.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-09 10:18:13 +01:00
Nikolay Sivov 6cf9524f07 xmllite/reader: Improve returned reader position for elements and attributes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-09 10:18:11 +01:00
Nikolay Sivov 162353ac8e xmllite/tests: Some tests for reader position.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-09 10:18:07 +01:00
Nikolay Sivov d3319f60ad xmllite/reader: Return prefixes from namespace stack.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-09 10:18:06 +01:00
Nikolay Sivov 20920457d7 xmllite/tests: Fix a memory leak (Valgrind).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 21:31:28 +01:00
Nikolay Sivov b57589a32d xmllite/reader: Return qualified element names from the stack, instead of input buffer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 15:30:24 +01:00
Nikolay Sivov 3ae1043fc1 xmllite/reader: Return local element names from the stack, instead of input buffer.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 15:30:22 +01:00
Nikolay Sivov 3697bd9acf xmllite/reader: Return empty string for namespace uri for some nodes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 15:30:20 +01:00
Nikolay Sivov 63c489fab5 xmllite/reader: Fix GetValue() for comments.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 15:30:18 +01:00
Nikolay Sivov 2d3ec1247d xmllite/tests: A couple of newline normalization tests for text nodes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 15:30:16 +01:00
Nikolay Sivov 71a0733052 xmllite/reader: Enforce maximum element depth limit.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 09:00:51 +01:00
Nikolay Sivov ce84b20554 xmllite/reader: Return qualified names for attributes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 09:00:49 +01:00
Nikolay Sivov 3fe5f25b17 xmllite/reader: Fix prefix returned after moving back to element.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 09:00:47 +01:00
Nikolay Sivov 70028b7d0a xmllite/reader: Return empty value for elements.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 09:00:45 +01:00
Nikolay Sivov 7c44c65ebb xmllite/reader: Return proper name for xml declaration PI.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 09:00:43 +01:00
Nikolay Sivov 8f0c235f81 xmllite/reader: Improve the way nesting level returned by GetDepth() is updated.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-06 19:43:46 +01:00
Nikolay Sivov 073c43a139 xmllite/reader: Implement IsEOF().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-06 19:43:44 +01:00
Nikolay Sivov b188079349 xmllite/reader: Reset node type to XmlNodeType_None on EOF.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-06 19:43:42 +01:00
Nikolay Sivov 0cbd938af8 xmllite/reader: Always return node type from Read().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-06 19:43:40 +01:00
Nikolay Sivov 80cf8838e3 xmllite/reader: Improve input stream encoding detection.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-06 19:43:38 +01:00
Nikolay Sivov 9c988e7b0e xmllite/writer: Implement WriteString().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-03 13:23:26 +01:00
Nikolay Sivov 455f5f2380 xmllite: Handle char references within text nodes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-06 13:45:39 +01:00
Nikolay Sivov 7e635876f4 xmllite/tests: Test Read() with NULL type argument.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-30 13:06:10 +01:00
Nikolay Sivov 1ed0631e5d xmllite/reader: Handle NULL argument in GetNodeType().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-30 13:06:04 +01:00
Nikolay Sivov dec0e47149 xmllite/tests: Some tests for returned namespace prefixes and uris.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-09 15:55:47 +01:00
Nikolay Sivov 682d4f147c xmllite: Allow prefixed element names.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-09 15:55:45 +01:00
Grant Paul 65cbc12ac6 xmllite: Parse URLs in `DOCTYPE PUBLIC` DTDs.
Signed-off-by: Grant Paul <git@grantpaul.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-22 16:32:09 +01:00
Jacek Caban 0414332b08 xmllite: Return success when setting XmlReaderProperty_MaxElementDepth property.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-27 18:05:32 +02:00
Jacek Caban 10026466a3 xmllite: Return success when setting XmlReaderProperty_MultiLanguage property.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-27 18:05:30 +02:00
Nikolay Sivov 0fd4fae7c5 xmllite/writer: Implement WriteCharEntity().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 11:17:30 +09:00
Nikolay Sivov 8b2b455bd0 xmllite/writer: Close open tag with WriteFullEndElement().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 11:17:28 +09:00
Nikolay Sivov 895ad74fb0 xmllite/writer: Support trivial case of WriteAttributeString().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-08 23:07:22 +09:00
Nikolay Sivov c52fa73a43 xmllite/writer: Initial support for indented output.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-07 11:17:52 +09:00
Nikolay Sivov 4dcbf2b4b2 xmllite/writer: Make it possible to use WriteRaw() multiple times.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-24 20:35:11 +09:00
Nikolay Sivov 1cb6fa5e84 xmllite/writer: Fix a bunch of Write* methods to set closed state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-24 20:35:07 +09:00
Nikolay Sivov 2d9f6f7215 xmllite/writer: Put writer into closed state on WriteAttributeString().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-24 20:35:03 +09:00
Nikolay Sivov e89c2df7c5 xmllite/writer: Handle initial and ready states in the rest of tested Write* methods.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-24 20:35:00 +09:00
Nikolay Sivov e3a6d59324 xmllite/writer: Fix WriteEndElement()/WriteFullEndElement() on ready state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-23 22:58:38 +09:00
Nikolay Sivov 6ca1ebdd25 xmllite/writer: Properly fail on initial state in WriteEndElement().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-23 22:58:36 +09:00
Nikolay Sivov 86a7dd99e0 xmllite/writer: Fix initial state handling in WriteEndDocument().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-23 22:58:34 +09:00
Nikolay Sivov 8ad295ed70 xmllite/tests: A test for Write* behaviour on initial writer state.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-23 22:58:31 +09:00
Nikolay Sivov 450a343f77 xmllite/tests: Add a helper to create/set writer output.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-22 22:23:31 +09:00
Nikolay Sivov 1a68193454 xmllite/tests: Add a helper to test writer output.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-22 22:23:31 +09:00
Nikolay Sivov b9b2dafb50 xmllite/tests: Use static linking to xmllite.dll.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-22 22:23:30 +09:00
Nikolay Sivov 41f22e4cd1 xmllite/writer: Implement WriteRaw().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-22 22:23:30 +09:00
Nikolay Sivov 7b8929e0f5 xmllite/writer: Implement WriteCData().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 12:13:46 +09:00
Nikolay Sivov 41fcd1042e xmllite/writer: Implement WriteComment().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-15 10:15:29 +09:00
Nikolay Sivov aaac0db600 xmllite: Support get/set for XmlResolver property.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-14 19:05:26 +09:00
Nikolay Sivov b190a72bfe xmllite/tests: Use todo_wine_if() in tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-15 23:50:15 +09:00
Alistair Leslie-Hughes 3e9b4c1a17 xmllite/tests: Fix memory leak (valgrind).
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-30 16:39:17 +09:00
Hans Leidekker d1658260a2 xmllite: Implement CreateXmlWriterOutputWithEncodingCodePage. 2015-08-06 21:42:19 +09:00
Nikolay Sivov aadd9ff159 xmllite/writer: Implement WriteEndDocument(). 2015-05-20 17:28:58 +09:00
André Hentschel b91084a992 xmllite/tests: Clarify ok() condition (PVS-Studio). 2014-11-11 14:21:37 +09:00
Nikolay Sivov af46bab594 xmllite/writer: Maintain a stack of written elements to write end tags.
Xmllite helps in a way that user doesn't have to specify closing tag
name (like it has to in case of MXWriter). So when closing current level
element qname is used for a closing tag; later this stack will also hold
namespace definitions that element is carrying to check if nested
element uses defined prefix.
2014-06-16 09:31:40 +02:00
Nikolay Sivov f43a6d46da xmllite/writer: Initial implementation of WriteElementString(). 2014-05-21 12:07:37 +02:00
Nikolay Sivov 2177403b8e xmllite/writer: Initial implementation of WriteStartElement(). 2014-05-21 12:07:35 +02:00
Nikolay Sivov 086a1e3709 xmllite/writer: Implement ByteOrderMark property. 2014-05-20 21:26:55 +02:00
Nikolay Sivov 9a2177ff53 xmllite/writer: Implement OmitXmlDeclaration property. 2014-05-20 21:26:55 +02:00
Nikolay Sivov 81d2516449 xmllite/writer: Fix Flush() behaviour on partial writes. 2014-05-16 10:53:29 +02:00
Nikolay Sivov caeecfa223 xmllite/writer: Implement Flush() method. 2014-05-15 19:05:01 +02:00
Nikolay Sivov a0f67c3695 xmllite/writer: Initial support for starting a document. 2014-05-15 19:05:00 +02:00
Nikolay Sivov 71ab66efa0 xmllite/writer: Initial support of output buffer creation. 2014-05-15 19:04:59 +02:00
Nikolay Sivov d2737dde80 xmllite/writer: Implement GetProperty(). 2014-05-14 11:25:15 +02:00
Nikolay Sivov e58070ab83 xmllite: Support external IMalloc for writer. 2014-05-13 16:58:57 +02:00
Nikolay Sivov ac8a24aa26 xmllite: Implement CreateXmlWriterOutputWithEncodingName(). 2014-03-21 11:17:51 +01:00
Dmitry Timoshkov 529d9ea922 xmllite: Also clear the attr pointer in reader_clear_attrs. 2014-02-22 08:40:44 -06:00
Dmitry Timoshkov f41f8af021 xmllite/tests: Add a test for parsing an empty element after XML declaration. 2014-02-20 15:15:45 +01:00
Dmitry Timoshkov f78b4f305d xmllite: Reader should set starting string offsets when encoding is being parsed. 2014-02-14 13:49:24 +01:00
Dmitry Timoshkov 493e406bbc xmllite/tests: Add a test for names and values parsed from an XML declaration. 2014-02-14 13:49:13 +01:00
Dmitry Timoshkov 09f371920f xmllite: Don't fail if standalone declaration is missing. 2014-02-14 13:49:01 +01:00
Dmitry Timoshkov b02ea57e04 xmllite/tests: Add a test for short variant of xml declaration. 2014-02-10 10:43:46 +01:00
Dmitry Timoshkov ce894b9fc6 xmllite/tests: There is no need to initialize OLE. 2014-02-10 10:43:42 +01:00
Dmitry Timoshkov 42e681e31d xmllite/tests: Fix stack corruption in 64-bit builds. 2014-02-10 10:43:11 +01:00
Frédéric Delanoy 8610af58fe xmllite/tests: Use common wine_dbgstr_guid implementation from test.h. 2014-01-29 14:50:55 +01:00
Frédéric Delanoy e5b689b71e xmllite/tests: Use BOOL type where appropriate. 2014-01-07 10:42:08 +01:00
Alexandre Julliard 99ef0d6ff0 makefiles: Get rid of the MAKE_TEST_RULES variable. 2014-01-02 12:13:16 +01:00
Nikolay Sivov 619ceae967 xmllite: Support resuming and value reporting for whitespace nodes in Misc. 2013-10-14 10:49:53 +02:00
Nikolay Sivov ae341b9bd7 xmllite: Use buffer offset instead of pointers. 2013-10-09 17:48:26 +02:00
Nikolay Sivov ece36f17d0 xmllite: Fix node type for whitespace text nodes in Content. 2013-09-30 20:34:52 +02:00
Nikolay Sivov 249b45786f xmllite: Reset resume state when text node is parsed. 2013-09-30 20:34:52 +02:00
Nikolay Sivov c75726ba76 xmllite: Support predefined xml entities. 2013-08-20 13:01:00 +02:00
Nikolay Sivov a04064b886 xmllite: Improve attribute value parsing. 2013-08-19 12:53:21 +02:00
Nikolay Sivov e51ab3c03a xmllite: Support reporting of a local name and value for attributes. 2013-08-19 12:53:21 +02:00
Nikolay Sivov 53f72826a2 xmllite: Initial implementation of attribute parsing. 2013-07-30 19:12:04 +02:00
Nikolay Sivov 80e70a8271 xmllite: Handle nesting depth limit better. 2013-07-24 11:11:38 -05:00
Nikolay Sivov d315e438a2 xmllite: Implement IsEmptyElement(). 2013-07-22 17:15:59 +02:00
Nikolay Sivov f02b2225ee xmllite: Initial support for CharData (or Text) nodes. 2013-07-22 17:15:59 +02:00
Nikolay Sivov 9997ef3fbc xmllite: It's acceptable to have NULL length pointer in GetLocalName(). 2013-06-12 12:09:00 +02:00