Commit Graph

79 Commits

Author SHA1 Message Date
Michael R Sweet
5f74dc2124 mxmlWrite* used a recursive algorithm which could require large amounts of
stack space depending on the file (Bug #549, CVE-2016-4571)
2016-06-12 21:12:11 +00:00
Michael R Sweet
21f436f36c Fix loading of text values with MXML_NO_CALLBACK or MXML_TEXT_CALLBACK (Bug #502)
Update unit test program to validate fix and cleanup output so that we can get
proper error messages.
2014-10-19 17:21:48 +00:00
Michael R Sweet
f760c840ff Fixed an XML fragment loading problem (Bug #494) 2014-01-05 03:28:03 +00:00
Michael R Sweet
6471e5ccd4 Fixed a memory leak when loading invalid XML (Bug #496) 2014-01-05 03:21:00 +00:00
Michael R Sweet
4351cf060c Prep for 2.8 release... 2014-01-04 21:50:06 +00:00
Michael R Sweet
ace5aa8686 Fix reading of UTF-16 characters from files. 2013-11-12 05:03:47 +00:00
Michael R Sweet
682852c289 Fix memory leak when loading a badly-formed XML file (STR #121) 2011-03-24 05:47:51 +00:00
Michael R Sweet
6af02aaf9d Avoid a double-free situation when using the SAX load method.
Add missing contents.
2011-01-22 01:02:05 +00:00
Michael R Sweet
a11d22799e Make mxmlSave* function descriptions consistent. 2010-09-19 07:29:46 +00:00
Michael R Sweet
c0f12e6a79 mxmlSave* no longer write all siblings of the passed node, just that node and
its children.
2010-09-19 07:27:48 +00:00
Michael R Sweet
34424e2757 Remove duplicate "the the". 2010-09-19 06:40:33 +00:00
Michael R Sweet
6b83ce881e mxmlLoad* did not error out on XML with multiple root nodes (STR #101) 2010-09-19 06:14:36 +00:00
Michael R Sweet
97ca6dc424 Updated the source headers to reference the Mini-XML license and its exceptions
to the LGPL2 (STR #108)
2010-09-19 05:26:46 +00:00
Michael R Sweet
96a610c1e5 Ignore (strip) BOMs in UTF-8 input. 2009-05-17 05:20:52 +00:00
Michael R Sweet
fa33165459 Fix UTF-8 output on platforms with an unsigned char. 2009-03-21 05:51:01 +00:00
Michael R Sweet
3f34b234cc Reject UTF-8 XML files that start with a BOM. 2009-03-19 05:27:26 +00:00
Michael R Sweet
9643c13183 Fix VC++ compile failures 2009-02-05 06:06:11 +00:00
Michael R Sweet
a38251bc9b Wrapping was not disabled when mxmlSetWrapMargin(0) was called, and
"<?xml ... ?>" was always followed by a newline (STR #76)
2008-03-21 04:59:01 +00:00
Michael R Sweet
8174485371 Add support for spaces around the "=" in attributes (STR #67)
Fix support for processing instructions and directives that are not
at the top level of a file (STR #67)
2008-01-13 00:42:35 +00:00
Michael R Sweet
c1c940970d Convert to DLL 2007-10-03 06:25:07 +00:00
Michael R Sweet
1f5e9b0758 Prep work to add threading support to Mini-XML. 2007-09-21 04:46:02 +00:00
Michael R Sweet
d6d842e60a Bump version to 2.4.
Added mxmlElementDeleteAttr() function (STR #59).
2007-09-15 20:03:15 +00:00
Michael R Sweet
f5993028ff Don't allow attributes without values. 2007-09-09 08:22:12 +00:00
Michael R Sweet
7da48b7de7 XML only treats space, tab, carriage return, and line feed as whitespace
characters.
2007-09-09 08:16:24 +00:00
Michael R Sweet
207782c809 Propagate element errors (STR #46) 2007-09-09 08:11:25 +00:00
Michael R Sweet
30feac1369 Add mxml_isspace() local Unicode implementation of isspace() with inlining
when possible (STR #48)
2007-09-09 07:27:08 +00:00
Michael R Sweet
bf73da6782 Save work on documentation.
Add SAX load APIs.

Add man page output for mxmldoc.

Add types for various callback functions.
2007-04-23 21:48:03 +00:00
Michael R Sweet
d5abcc44b3 Fix detection of bad elements. 2007-04-18 02:45:47 +00:00
Michael R Sweet
40a4dd5242 Fix detection of missing close tags at the end of a document (STR #45) 2007-04-18 02:37:01 +00:00
Michael R Sweet
4636114c5b Really Mini-XML 2.3, update documentation. 2007-04-18 01:55:03 +00:00
Michael R Sweet
cb7c6c2311 Add user_data and ref_count members to mxml_node_t structure.
Add mxmlRelease() and mxmlRetain() for reference-counted node management.

Add mxmlSetWrapMargin() to control wrapping of XML output.
2007-04-18 01:08:58 +00:00
Michael R Sweet
fe9a9b251c Conditionally check for EINTR (STR #33) 2005-12-07 15:01:08 +00:00
Michael R Sweet
735989840c Save work on adding @private@ comment support...
mxml-file.c:
    - Change comment from @private to @private@.

mxmldoc.c:
    - scan_file(): Changes to support @private@.
    - update_comment(): Remove node if the comment contains @private@.
2005-11-29 20:43:30 +00:00
Michael R Sweet
74e7d69032 Fix memory leak in mxmlLoad*() functions (STR #27)
Fix default implementation of mxml_error() to properly format the
error message.
2005-08-16 14:46:18 +00:00
Michael R Sweet
19b8ed648f Add MXML_IGNORE and MXML_IGNORE_CB to allow whitespace to be
ignored in element-only XML files.
2005-06-07 23:43:45 +00:00
Michael R Sweet
e0262e0099 Fix segfault in mxmlLoad*() with invalid XML. 2005-05-30 13:00:54 +00:00
Michael R Sweet
63cd5de2a0 Fix bug in custom data with whitespace.
Prep for 2.2.2 release.
2005-05-19 14:56:05 +00:00
Michael R Sweet
ad02a0255f Fix STR #21: load methods didn't return NULL on error.
Update docos for 2.2.1.
2005-05-18 01:45:20 +00:00
Michael R Sweet
6712bf6914 Update for 2.2 release. 2005-02-26 05:27:25 +00:00
Michael R Sweet
8fc90a57d6 CHANGES:
- Changelog update.

mxml-file.c:
    - Check for invalid control chars (STR #10)
    - Don't allow elements to contain duplicate attributes (STR
      #16)

textmxml.c:
    - Add whitespace handling for CDATA elements.

test.xml:
    - Add CDATA and comment data to test file.
2005-01-29 17:03:33 +00:00
Michael R Sweet
886a707ad7 Update copyright to 2005. 2005-01-29 07:21:44 +00:00
Michael R Sweet
f5971df74b Added support for CDATA (STR #14, STR #15)
Updated comment and processing instruction handling - no entity
support per XML specification.

Added checking for invalid comment termination ("--->" is not
allowed)

Fixed test program to work with new ?xml handling.
2005-01-29 07:19:38 +00:00
Michael R Sweet
0591ee2e19 Added support for custom data nodes (STR #6) 2004-10-28 02:58:01 +00:00
Michael R Sweet
c0878b3f9a Treat UTF-8 sequences that are longer than needed as an error (STR #4) 2004-10-28 01:07:00 +00:00
Michael R Sweet
3625039424 Fixed entity number support (STR #8)
Fixed mxmlLoadString() bug with UTF-8 (STR #7)

Fixed entity lookup bug (STR #5)
2004-10-26 21:04:32 +00:00
Michael R Sweet
3cc3f8a63d Add new mxmlLoadFd() and mxmlSaveFd() functions. 2004-07-11 13:14:07 +00:00
Michael R Sweet
195aef09fd VC++.NET fixes. 2004-06-25 18:52:34 +00:00
Michael R Sweet
0fd3bd7f33 Optimizations and bug fixes from STR #2:
- mxmlIndexNew() sort algorithm update to eliminate unnecessary
      right-hand recursion.
    - Combine printf() and puts() calls in mxmldoc to reduce the number
      of calls and code size.
    - mxmlSaveFile() now writes Unicode chars with fwrite for potential
      speedup and modest size savings.
    - mxmlEntityAddCallback() now returns an integer status so an app
      knows when it was not possible to add an entity callback.
2004-06-01 20:19:34 +00:00
Michael R Sweet
acab636423 UTF-16 input support. 2004-05-16 21:54:47 +00:00
Michael R Sweet
537afc37da More documentation fun.
Move version definition to configure script.

Add XML schema for the mxmldoc output.
2004-05-02 16:04:40 +00:00