mxmlLoad* did not error out on XML with multiple root nodes (STR #101)

pull/193/head
Michael R Sweet 14 years ago
parent 83dc8f4932
commit 6b83ce881e
  1. 1
      CHANGES
  2. 55
      mxml-file.c

@ -7,6 +7,7 @@ CHANGES IN Mini-XML 2.7
exceptions to the LGPL2 (STR #108)
- The shared library did not include a destructor for the thread-
specific data key on UNIX-based operating systems (STR #103)
- mxmlLoad* did not error out on XML with multiple root nodes (STR #101)
CHANGES IN Mini-XML 2.6

@ -1650,6 +1650,17 @@ mxml_load_data(
*bufptr = '\0';
if (!parent && first)
{
/*
* There can only be one root element!
*/
mxml_error("<%s> cannot be a second root node after <%s>",
buffer, first->value.element.name);
goto error;
}
if ((node = mxmlNewElement(parent, buffer)) == NULL)
{
/*
@ -1707,6 +1718,17 @@ mxml_load_data(
*bufptr = '\0';
if (!parent && first)
{
/*
* There can only be one root element!
*/
mxml_error("<%s> cannot be a second root node after <%s>",
buffer, first->value.element.name);
goto error;
}
if ((node = mxmlNewElement(parent, buffer)) == NULL)
{
/*
@ -1763,6 +1785,17 @@ mxml_load_data(
*bufptr = '\0';
if (!parent && first)
{
/*
* There can only be one root element!
*/
mxml_error("<%s> cannot be a second root node after <%s>",
buffer, first->value.element.name);
goto error;
}
if ((node = mxmlNewElement(parent, buffer)) == NULL)
{
/*
@ -1838,6 +1871,17 @@ mxml_load_data(
*bufptr = '\0';
if (!parent && first)
{
/*
* There can only be one root element!
*/
mxml_error("<%s> cannot be a second root node after <%s>",
buffer, first->value.element.name);
goto error;
}
if ((node = mxmlNewElement(parent, buffer)) == NULL)
{
/*
@ -1918,6 +1962,17 @@ mxml_load_data(
* Handle open tag...
*/
if (!parent && first)
{
/*
* There can only be one root element!
*/
mxml_error("<%s> cannot be a second root node after <%s>",
buffer, first->value.element.name);
goto error;
}
if ((node = mxmlNewElement(parent, buffer)) == NULL)
{
/*

Loading…
Cancel
Save