1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-03-31 06:50:06 +03:00

Ready for 1.7.0, major changes, nanohttp, cleanup, binary compat with 1.4,

etc... See Changelog, Daniel.
This commit is contained in:
Daniel Veillard 1999-09-22 09:46:25 +00:00
parent 1b0f55fbc0
commit 7f7d1119af
38 changed files with 3152 additions and 1868 deletions

View File

@ -1,3 +1,17 @@
Wed Sep 22 11:40:31 CEST 1999 Daniel Veillard <Daniel.Veillard@w3.org>
* parser.h: modified the parser context struct to regain 1.4.0
binary compatibility
* parser.c, xml-error.h: added errno ot teh context and defined
a set of errors values with update of errno
* nanohttp.[ch]: minimalist HTTP front-end for fetching remote
DTDs and entities
* *.h, *.c: complete cleanup of the use of config.h and include
protection depending on the current setup.
* overalll debugging, maintenance and bug-fixing on all modules
* updated the documentation
* ready for 1.7.0
Wed Sep 8 22:46:14 CEST 1999 Daniel Veillard <Daniel.Veillard@w3.org>
* HTMLparser.c : cleanup

View File

@ -10,13 +10,20 @@
#define HAVE_FCNTL_H
#include <io.h>
#else
#include <config.h>
#include "config.h"
#endif
#include <stdio.h>
#include <ctype.h>
#include <string.h> /* for memset() only */
#ifdef HAVE_CTYPE_H
#include <ctype.h>
#endif
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#ifdef HAVE_SYS_STAT_H
#include <sys/stat.h>
#endif
#ifdef HAVE_FCNTL_H
#include <fcntl.h>
#endif

View File

@ -6,12 +6,20 @@
* Daniel.Veillard@w3.org
*/
#ifndef WIN32
#include "config.h"
#endif
#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>
#include <string.h> /* for memset() only ! */
#ifdef HAVE_CTYPE_H
#include <ctype.h>
#endif
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#include "xmlmemory.h"
#include "HTMLparser.h"
#include "HTMLtree.h"

View File

@ -27,6 +27,7 @@ libxml_la_SOURCES = \
xpath.c \
xmlIO.c \
xmlmemory.c \
nanohttp.c \
valid.c
xmlincdir = $(includedir)/gnome-xml
@ -43,6 +44,7 @@ xmlinc_HEADERS = \
xpath.h \
xmlIO.h \
xmlmemory.h \
nanohttp.h \
valid.h
DEPS = $(top_builddir)/libxml.la

29
SAX.c
View File

@ -6,6 +6,7 @@
* Daniel Veillard <Daniel.Veillard@w3.org>
*/
#include <stdio.h>
#include <stdlib.h>
#include "xmlmemory.h"
@ -236,15 +237,8 @@ resolveEntity(void *ctx, const CHAR *publicId, const CHAR *systemId)
fprintf(stderr, "SAX.resolveEntity(%s, %s)\n", publicId, systemId);
#endif
/*
* TODO : resolveEntity, handling of http://.. or ftp://..
*/
if (systemId != NULL) {
if (!xmlStrncmp(systemId, BAD_CAST "http://", 7)) {
} else if (!xmlStrncmp(systemId, BAD_CAST "ftp://", 6)) {
} else {
return(xmlNewInputFromFile(ctxt, (char *) systemId));
}
return(xmlNewInputFromFile(ctxt, (char *) systemId));
}
return(NULL);
}
@ -604,12 +598,29 @@ startElement(void *ctx, const CHAR *fullname, const CHAR **atts)
CHAR *prefix;
const CHAR *att;
const CHAR *value;
int i;
#ifdef DEBUG_SAX
fprintf(stderr, "SAX.startElement(%s)\n", fullname);
#endif
/*
* First check on validity:
*/
if (ctxt->validate && (ctxt->myDoc->extSubset == NULL) &&
((ctxt->myDoc->intSubset == NULL) ||
((ctxt->myDoc->intSubset->notations == NULL) &&
(ctxt->myDoc->intSubset->elements == NULL) &&
(ctxt->myDoc->intSubset->attributes == NULL) &&
(ctxt->myDoc->intSubset->entities == NULL)))) {
if (ctxt->vctxt.error != NULL) {
ctxt->vctxt.error(ctxt->vctxt.userData,
"Validation failed: no DTD found !\n");
}
ctxt->validate = 0;
}
/*
* Split the full name into a namespace prefix and the tag name
*/

View File

@ -34,6 +34,9 @@
/* Define if you have the isnand function. */
#undef HAVE_ISNAND
/* Define if you have the localtime function. */
#undef HAVE_LOCALTIME
/* Define if you have the snprintf function. */
#undef HAVE_SNPRINTF
@ -43,9 +46,15 @@
/* Define if you have the strerror function. */
#undef HAVE_STRERROR
/* Define if you have the strftime function. */
#undef HAVE_STRFTIME
/* Define if you have the strndup function. */
#undef HAVE_STRNDUP
/* Define if you have the <arpa/inet.h> header file. */
#undef HAVE_ARPA_INET_H
/* Define if you have the <ctype.h> header file. */
#undef HAVE_CTYPE_H
@ -79,18 +88,36 @@
/* Define if you have the <ndir.h> header file. */
#undef HAVE_NDIR_H
/* Define if you have the <netdb.h> header file. */
#undef HAVE_NETDB_H
/* Define if you have the <netinet/in.h> header file. */
#undef HAVE_NETINET_IN_H
/* Define if you have the <stdarg.h> header file. */
#undef HAVE_STDARG_H
/* Define if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define if you have the <sys/dir.h> header file. */
#undef HAVE_SYS_DIR_H
/* Define if you have the <sys/ndir.h> header file. */
#undef HAVE_SYS_NDIR_H
/* Define if you have the <sys/select.h> header file. */
#undef HAVE_SYS_SELECT_H
/* Define if you have the <sys/socket.h> header file. */
#undef HAVE_SYS_SOCKET_H
/* Define if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define if you have the <sys/time.h> header file. */
#undef HAVE_SYS_TIME_H
/* Define if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
@ -103,6 +130,15 @@
/* Define if you have the <zlib.h> header file. */
#undef HAVE_ZLIB_H
/* Define if you have the inet library (-linet). */
#undef HAVE_LIBINET
/* Define if you have the nsl library (-lnsl). */
#undef HAVE_LIBNSL
/* Define if you have the socket library (-lsocket). */
#undef HAVE_LIBSOCKET
/* Name of package */
#undef PACKAGE

View File

@ -4,8 +4,8 @@ AC_INIT(entities.h)
AM_CONFIG_HEADER(config.h)
LIBXML_MAJOR_VERSION=1
LIBXML_MINOR_VERSION=6
LIBXML_MICRO_VERSION=2
LIBXML_MINOR_VERSION=7
LIBXML_MICRO_VERSION=0
LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION
LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION
@ -46,6 +46,8 @@ AC_HEADER_STDC
AC_CHECK_HEADERS(fcntl.h unistd.h ctype.h dirent.h errno.h malloc.h)
AC_CHECK_HEADERS(stdarg.h sys/stat.h sys/types.h time.h zlib.h)
AC_CHECK_HEADERS(ieeefp.h nan.h math.h fp_class.h float.h)
AC_CHECK_HEADERS(stdlib.h sys/socket.h netinet/in.h arpa/inet.h)
AC_CHECK_HEADERS(netdb.h sys/time.h sys/select.h)
dnl Specific dir for HTML output ?
if test "x$with_html_dir" = "x" ; then
@ -70,6 +72,12 @@ dnl Checks for library functions.
AC_FUNC_STRFTIME
AC_CHECK_FUNCS(strdup strndup strerror snprintf)
AC_CHECK_FUNCS(finite isinf isnan isnand fp_class class fpclass finite)
AC_CHECK_FUNCS(strftime localtime)
dnl Checks for inet libraries:
AC_CHECK_LIB(socket, socket)
AC_CHECK_LIB(inet, connect)
AC_CHECK_LIB(nsl, t_accept)
dnl Checks for isnan in libm if not in libc
M_LIBS=
@ -93,7 +101,7 @@ fi
XML_LIBDIR='-L${libdir}'
XML_INCLUDEDIR='-I${includedir}/gnome-xml'
XML_LIBS="-lxml $Z_LIBS $M_LIBS"
XML_LIBS="-lxml $Z_LIBS $M_LIBS $LIBS"
AC_SUBST(XML_LIBDIR)
AC_SUBST(XML_LIBS)

View File

@ -10,6 +10,7 @@
<!entity HTMLtree SYSTEM "sgml/HTMLtree.sgml">
<!entity parserInternals SYSTEM "sgml/parserInternals.sgml">
<!entity xmlmemory SYSTEM "sgml/xmlmemory.sgml">
<!entity nanohttp SYSTEM "sgml/nanohttp.sgml">
]>
<book>
@ -30,6 +31,7 @@
&xpath;
&parserInternals;
&xmlmemory;
&nanohttp;
</chapter>
</book>

View File

@ -103,6 +103,11 @@ HREF="gnome-xml-parserinternals.html"
HREF="gnome-xml-xmlmemory.html"
>xmlmemory</A
> &#8212; </DT
><DT
><A
HREF="gnome-xml-nanohttp.html"
>nanohttp</A
> &#8212; </DT
></DL
></DD
></DL

View File

@ -115,7 +115,7 @@ SIZE="3"
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN4098"
NAME="AEN4116"
></A
><H2
>Name</H2
@ -123,7 +123,7 @@ NAME="AEN4098"
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN4101"
NAME="AEN4119"
></A
><H2
>Synopsis</H2
@ -344,7 +344,7 @@ HREF="gnome-xml-entities.html#XMLENTITIESTABLEPTR"
><DIV
CLASS="REFSECT1"
><A
NAME="AEN4158"
NAME="AEN4176"
></A
><H2
>Description</H2
@ -354,14 +354,14 @@ NAME="AEN4158"
><DIV
CLASS="REFSECT1"
><A
NAME="AEN4161"
NAME="AEN4179"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
NAME="AEN4163"
NAME="AEN4181"
></A
><H3
><A
@ -377,7 +377,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XML_INTERNAL_GENERAL_ENTITY 1</PRE
>#define XML_INTERNAL_GENERAL_ENTITY</PRE
></TD
></TR
></TABLE
@ -387,7 +387,7 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4168"
NAME="AEN4186"
></A
><H3
><A
@ -403,7 +403,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XML_EXTERNAL_GENERAL_PARSED_ENTITY 2</PRE
>#define XML_EXTERNAL_GENERAL_PARSED_ENTITY</PRE
></TD
></TR
></TABLE
@ -413,7 +413,7 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4173"
NAME="AEN4191"
></A
><H3
><A
@ -429,7 +429,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XML_EXTERNAL_GENERAL_UNPARSED_ENTITY 3</PRE
>#define XML_EXTERNAL_GENERAL_UNPARSED_ENTITY</PRE
></TD
></TR
></TABLE
@ -439,7 +439,7 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4178"
NAME="AEN4196"
></A
><H3
><A
@ -455,7 +455,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XML_INTERNAL_PARAMETER_ENTITY 4</PRE
>#define XML_INTERNAL_PARAMETER_ENTITY</PRE
></TD
></TR
></TABLE
@ -465,7 +465,7 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4183"
NAME="AEN4201"
></A
><H3
><A
@ -481,7 +481,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XML_EXTERNAL_PARAMETER_ENTITY 5</PRE
>#define XML_EXTERNAL_PARAMETER_ENTITY</PRE
></TD
></TR
></TABLE
@ -491,7 +491,7 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4188"
NAME="AEN4206"
></A
><H3
><A
@ -507,7 +507,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XML_INTERNAL_PREDEFINED_ENTITY 6</PRE
>#define XML_INTERNAL_PREDEFINED_ENTITY</PRE
></TD
></TR
></TABLE
@ -517,33 +517,20 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4193"
NAME="AEN4211"
></A
><H3
><A
NAME="XMLENTITYPTR"
></A
>xmlEntityPtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlEntity *xmlEntityPtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4198"
NAME="AEN4215"
></A
><H3
><A
@ -559,7 +546,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XML_MIN_ENTITIES_TABLE 32</PRE
>#define XML_MIN_ENTITIES_TABLE</PRE
></TD
></TR
></TABLE
@ -569,33 +556,20 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4203"
NAME="AEN4220"
></A
><H3
><A
NAME="XMLENTITIESTABLEPTR"
></A
>xmlEntitiesTablePtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlEntitiesTable *xmlEntitiesTablePtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4208"
NAME="AEN4224"
></A
><H3
><A
@ -665,7 +639,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the document</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -682,7 +656,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity name</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -699,7 +673,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity type XML_xxx_yyy_ENTITY</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -716,7 +690,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity external ID if available</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -733,7 +707,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity system ID if available</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -750,7 +724,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity content</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -760,7 +734,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4248"
NAME="AEN4264"
></A
><H3
><A
@ -830,7 +804,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the document</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -847,7 +821,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity name</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -864,7 +838,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity type XML_xxx_yyy_ENTITY</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -881,7 +855,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity external ID if available</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -898,7 +872,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity system ID if available</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -915,7 +889,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity content</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -925,7 +899,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4288"
NAME="AEN4304"
></A
><H3
><A
@ -981,7 +955,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity name</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -996,7 +970,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>NULL if not, othervise the entity</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -1006,7 +980,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4309"
NAME="AEN4325"
></A
><H3
><A
@ -1068,7 +1042,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the document referencing the entity</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1085,7 +1059,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity name</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1100,7 +1074,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>A pointer to the entity structure or NULL if not found.</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -1110,7 +1084,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4335"
NAME="AEN4351"
></A
><H3
><A
@ -1171,7 +1145,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the document referencing the entity</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1188,7 +1162,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity name</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1203,7 +1177,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>A pointer to the entity structure or NULL if not found.</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -1213,7 +1187,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4361"
NAME="AEN4377"
></A
><H3
><A
@ -1274,7 +1248,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the document referencing the entity</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1291,7 +1265,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity name</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1306,7 +1280,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>A pointer to the entity structure or NULL if not found.</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -1316,7 +1290,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4387"
NAME="AEN4403"
></A
><H3
><A
@ -1383,7 +1357,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the document containing the string</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1400,7 +1374,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> A string to convert to XML.</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1415,7 +1389,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>A newly allocated string with the substitution done.</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -1425,7 +1399,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4415"
NAME="AEN4431"
></A
><H3
><A
@ -1491,7 +1465,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the document containing the string</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1508,7 +1482,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> A string to convert to XML.</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1523,7 +1497,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>A newly allocated string with the substitution done.</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -1533,7 +1507,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4442"
NAME="AEN4458"
></A
><H3
><A
@ -1584,7 +1558,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the xmlEntitiesTablePtr just created or NULL in case of error.</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -1594,7 +1568,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4458"
NAME="AEN4474"
></A
><H3
><A
@ -1650,7 +1624,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> An entity table</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1665,7 +1639,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new xmlEntitiesTablePtr or NULL in case of error.</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -1675,7 +1649,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4479"
NAME="AEN4495"
></A
><H3
><A
@ -1728,7 +1702,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> An entity table</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -1738,7 +1712,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN4495"
NAME="AEN4511"
></A
><H3
><A
@ -1795,7 +1769,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> An XML buffer.</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1812,7 +1786,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> An entity table</TD
>&nbsp;</TD
></TR
></TABLE
><P

View File

@ -115,7 +115,7 @@ SIZE="3"
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN5974"
NAME="AEN6149"
></A
><H2
>Name</H2
@ -123,7 +123,7 @@ NAME="AEN5974"
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN5977"
NAME="AEN6152"
></A
><H2
>Synopsis</H2
@ -277,7 +277,7 @@ HREF="gnome-xml-htmlparser.html#HTMLPARSEFILE"
><DIV
CLASS="REFSECT1"
><A
NAME="AEN6015"
NAME="AEN6190"
></A
><H2
>Description</H2
@ -287,248 +287,131 @@ NAME="AEN6015"
><DIV
CLASS="REFSECT1"
><A
NAME="AEN6018"
NAME="AEN6193"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
NAME="AEN6020"
NAME="AEN6195"
></A
><H3
><A
NAME="HTMLPARSERCTXT"
></A
>htmlParserCtxt</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlParserCtxt htmlParserCtxt;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6025"
NAME="AEN6199"
></A
><H3
><A
NAME="HTMLPARSERCTXTPTR"
></A
>htmlParserCtxtPtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlParserCtxtPtr htmlParserCtxtPtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6030"
NAME="AEN6203"
></A
><H3
><A
NAME="HTMLPARSERNODEINFO"
></A
>htmlParserNodeInfo</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlParserNodeInfo htmlParserNodeInfo;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6035"
NAME="AEN6207"
></A
><H3
><A
NAME="HTMLSAXHANDLER"
></A
>htmlSAXHandler</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlSAXHandler htmlSAXHandler;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6040"
NAME="AEN6211"
></A
><H3
><A
NAME="HTMLSAXHANDLERPTR"
></A
>htmlSAXHandlerPtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlSAXHandlerPtr htmlSAXHandlerPtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6045"
NAME="AEN6215"
></A
><H3
><A
NAME="HTMLPARSERINPUT"
></A
>htmlParserInput</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlParserInput htmlParserInput;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6050"
NAME="AEN6219"
></A
><H3
><A
NAME="HTMLPARSERINPUTPTR"
></A
>htmlParserInputPtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlParserInputPtr htmlParserInputPtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6055"
NAME="AEN6223"
></A
><H3
><A
NAME="HTMLDOCPTR"
></A
>htmlDocPtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlDocPtr htmlDocPtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6060"
NAME="AEN6227"
></A
><H3
><A
NAME="HTMLNODEPTR"
></A
>htmlNodePtr</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef xmlNodePtr htmlNodePtr;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6065"
NAME="AEN6231"
></A
><H3
><A
@ -584,7 +467,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> The tag name</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -599,7 +482,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the related htmlElemDescPtr or NULL if not found.</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -609,7 +492,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6086"
NAME="AEN6252"
></A
><H3
><A
@ -667,7 +550,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the entity name</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -682,7 +565,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the associated htmlEntityDescPtr if found, NULL otherwise.</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -692,7 +575,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6108"
NAME="AEN6274"
></A
><H3
><A
@ -754,7 +637,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> an HTML parser context</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -771,7 +654,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> location to store the entity name</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -786,8 +669,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the associated htmlEntityDescPtr if found, or NULL otherwise,
if non-NULL *str will have to be freed by the caller.</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -797,7 +679,7 @@ if non-NULL *str will have to be freed by the caller.</TD
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6135"
NAME="AEN6301"
></A
><H3
><A
@ -856,7 +738,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> an HTML parser context</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -871,7 +753,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the value parsed (as an int)</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -881,7 +763,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6157"
NAME="AEN6323"
></A
><H3
><A
@ -938,7 +820,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> an HTML parser context</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -948,7 +830,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6175"
NAME="AEN6341"
></A
><H3
><A
@ -1012,7 +894,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a pointer to an array of CHAR</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1029,7 +911,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a free form C string describing the HTML document encoding, or NULL</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1046,7 +928,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the SAX handler block</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1063,7 +945,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> if using SAX, this pointer will be provided on callbacks. </TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1078,7 +960,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the resulting document tree</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -1088,7 +970,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6209"
NAME="AEN6375"
></A
><H3
><A
@ -1145,7 +1027,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a pointer to an array of CHAR</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1162,7 +1044,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a free form C string describing the HTML document encoding, or NULL</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1177,7 +1059,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the resulting document tree</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -1187,7 +1069,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6234"
NAME="AEN6400"
></A
><H3
><A
@ -1249,7 +1131,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the filename</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1266,7 +1148,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a free form C string describing the HTML document encoding, or NULL</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1283,7 +1165,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the SAX handler block</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1300,7 +1182,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> if using SAX, this pointer will be provided on callbacks. </TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1315,7 +1197,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the resulting document tree</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -1325,7 +1207,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6267"
NAME="AEN6433"
></A
><H3
><A
@ -1380,7 +1262,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the filename</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1397,7 +1279,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a free form C string describing the HTML document encoding, or NULL</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -1412,7 +1294,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the resulting document tree</TD
>&nbsp;</TD
></TR
></TABLE
><P

View File

@ -115,7 +115,7 @@ SIZE="3"
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN6296"
NAME="AEN6462"
></A
><H2
>Name</H2
@ -123,7 +123,7 @@ NAME="AEN6296"
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN6299"
NAME="AEN6465"
></A
><H2
>Synopsis</H2
@ -188,7 +188,7 @@ HREF="gnome-xml-tree.html#XMLDOCPTR"
><DIV
CLASS="REFSECT1"
><A
NAME="AEN6313"
NAME="AEN6479"
></A
><H2
>Description</H2
@ -198,14 +198,14 @@ NAME="AEN6313"
><DIV
CLASS="REFSECT1"
><A
NAME="AEN6316"
NAME="AEN6482"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
NAME="AEN6318"
NAME="AEN6484"
></A
><H3
><A
@ -221,7 +221,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define HTML_TEXT_NODE XML_TEXT_NODE</PRE
>#define HTML_TEXT_NODE</PRE
></TD
></TR
></TABLE
@ -231,7 +231,7 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6323"
NAME="AEN6489"
></A
><H3
><A
@ -247,7 +247,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define HTML_ENTITY_REF_NODE XML_ENTITY_REF_NODE</PRE
>#define HTML_ENTITY_REF_NODE</PRE
></TD
></TR
></TABLE
@ -257,7 +257,7 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6328"
NAME="AEN6494"
></A
><H3
><A
@ -273,7 +273,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define HTML_COMMENT_NODE XML_COMMENT_NODE</PRE
>#define HTML_COMMENT_NODE</PRE
></TD
></TR
></TABLE
@ -283,7 +283,7 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6333"
NAME="AEN6499"
></A
><H3
><A
@ -342,7 +342,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the document</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -359,7 +359,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> OUT: the memory pointer</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -376,7 +376,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> OUT: the memory lenght</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -386,7 +386,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6358"
NAME="AEN6524"
></A
><H3
><A
@ -443,7 +443,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the FILE*</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -460,7 +460,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the document</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -470,7 +470,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6379"
NAME="AEN6545"
></A
><H3
><A
@ -524,7 +524,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the filename</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -541,7 +541,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the document</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -556,7 +556,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the number of byte written or -1 in case of failure.</TD
>&nbsp;</TD
></TR
></TABLE
><P

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -115,7 +115,7 @@ SIZE="3"
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN5826"
NAME="AEN5995"
></A
><H2
>Name</H2
@ -123,7 +123,7 @@ NAME="AEN5826"
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN5829"
NAME="AEN5998"
></A
><H2
>Synopsis</H2
@ -138,6 +138,10 @@ CELLPADDING="6"
CLASS="SYNOPSIS"
>&#13;
enum <A
HREF="gnome-xml-xml-error.html#XMLPARSERERRORS"
>xmlParserErrors</A
>;
void <A
HREF="gnome-xml-xml-error.html#XMLPARSERERROR"
>xmlParserError</A
@ -183,7 +187,7 @@ HREF="gnome-xml-parser.html#XMLPARSERINPUTPTR"
><DIV
CLASS="REFSECT1"
><A
NAME="AEN5840"
NAME="AEN6010"
></A
><H2
>Description</H2
@ -193,14 +197,151 @@ NAME="AEN5840"
><DIV
CLASS="REFSECT1"
><A
NAME="AEN5843"
NAME="AEN6013"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
NAME="AEN5845"
NAME="AEN6015"
></A
><H3
><A
NAME="XMLPARSERERRORS"
></A
>enum xmlParserErrors</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef enum {
XML_ERR_OK = 0,
XML_ERR_INTERNAL_ERROR,
XML_ERR_NO_MEMORY,
XML_ERR_DOCUMENT_START,
XML_ERR_DOCUMENT_EMPTY,
XML_ERR_DOCUMENT_END,
XML_ERR_INVALID_HEX_CHARREF,
XML_ERR_INVALID_DEC_CHARREF,
XML_ERR_INVALID_CHARREF,
XML_ERR_INVALID_CHAR,
XML_ERR_CHARREF_AT_EOF,
XML_ERR_CHARREF_IN_PROLOG,
XML_ERR_CHARREF_IN_EPILOG,
XML_ERR_CHARREF_IN_DTD,
XML_ERR_ENTITYREF_AT_EOF,
XML_ERR_ENTITYREF_IN_PROLOG,
XML_ERR_ENTITYREF_IN_EPILOG,
XML_ERR_ENTITYREF_IN_DTD,
XML_ERR_PEREF_AT_EOF,
XML_ERR_PEREF_IN_PROLOG,
XML_ERR_PEREF_IN_EPILOG,
XML_ERR_PEREF_IN_INT_SUBSET,
XML_ERR_ENTITYREF_NO_NAME,
XML_ERR_ENTITYREF_SEMICOL_MISSING,
XML_ERR_PEREF_NO_NAME,
XML_ERR_PEREF_SEMICOL_MISSING,
XML_ERR_UNDECLARED_ENTITY,
XML_WAR_UNDECLARED_ENTITY,
XML_ERR_UNPARSED_ENTITY,
XML_ERR_ENTITY_IS_EXTERNAL,
XML_ERR_ENTITY_IS_PARAMETER,
XML_ERR_UNKNOWN_ENCODING,
XML_ERR_UNSUPPORTED_ENCODING,
XML_ERR_STRING_NOT_STARTED,
XML_ERR_STRING_NOT_CLOSED,
XML_ERR_NS_DECL_ERROR,
XML_ERR_ENTITY_NOT_STARTED,
XML_ERR_ENTITY_NOT_FINISHED,
XML_ERR_LT_IN_ATTRIBUTE,
XML_ERR_ATTRIBUTE_NOT_STARTED,
XML_ERR_ATTRIBUTE_NOT_FINISHED,
XML_ERR_ATTRIBUTE_WITHOUT_VALUE,
XML_ERR_ATTRIBUTE_REDEFINED,
XML_ERR_LITERAL_NOT_STARTED,
XML_ERR_LITERAL_NOT_FINISHED,
XML_ERR_COMMENT_NOT_FINISHED,
XML_ERR_PI_NOT_STARTED,
XML_ERR_PI_NOT_FINISHED,
XML_ERR_NOTATION_NOT_STARTED,
XML_ERR_NOTATION_NOT_FINISHED,
XML_ERR_ATTLIST_NOT_STARTED,
XML_ERR_ATTLIST_NOT_FINISHED,
XML_ERR_MIXED_NOT_STARTED,
XML_ERR_MIXED_NOT_FINISHED,
XML_ERR_ELEMCONTENT_NOT_STARTED,
XML_ERR_ELEMCONTENT_NOT_FINISHED,
XML_ERR_XMLDECL_NOT_STARTED,
XML_ERR_XMLDECL_NOT_FINISHED,
XML_ERR_CONDSEC_NOT_STARTED,
XML_ERR_CONDSEC_NOT_FINISHED,
XML_ERR_EXT_SUBSET_NOT_FINISHED,
XML_ERR_DOCTYPE_NOT_FINISHED,
XML_ERR_MISPLACED_CDATA_END,
XML_ERR_CDATA_NOT_FINISHED,
XML_ERR_RESERVED_XML_NAME,
XML_ERR_SPACE_REQUIRED,
XML_ERR_SEPARATOR_REQUIRED,
XML_ERR_NMTOKEN_REQUIRED,
XML_ERR_NAME_REQUIRED,
XML_ERR_PCDATA_REQUIRED,
XML_ERR_URI_REQUIRED,
XML_ERR_PUBID_REQUIRED,
XML_ERR_LT_REQUIRED,
XML_ERR_GT_REQUIRED,
XML_ERR_LTSLASH_REQUIRED,
XML_ERR_EQUAL_REQUIRED,
XML_ERR_TAG_NAME_MISMATCH,
XML_ERR_TAG_NOT_FINISED,
XML_ERR_STANDALONE_VALUE,
XML_ERR_ENCODING_NAME,
XML_ERR_HYPHEN_IN_COMMENT
}xmlParserErrors;</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6020"
></A
><H3
><A
@ -253,7 +394,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> an XML parser context</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -270,7 +411,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the message to display/transmit</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -287,7 +428,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> extra parameters for the message display</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -297,7 +438,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5868"
NAME="AEN6043"
></A
><H3
><A
@ -350,7 +491,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> an XML parser context</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -367,7 +508,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the message to display/transmit</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -384,7 +525,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> extra parameters for the message display</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -394,7 +535,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5891"
NAME="AEN6066"
></A
><H3
><A
@ -491,7 +632,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5914"
NAME="AEN6089"
></A
><H3
><A
@ -588,7 +729,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5937"
NAME="AEN6112"
></A
><H3
><A
@ -641,7 +782,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> an xmlParserInputPtr input</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -651,7 +792,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5953"
NAME="AEN6128"
></A
><H3
><A
@ -704,7 +845,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> an xmlParserInputPtr input</TD
>&nbsp;</TD
></TR
></TABLE
><P

View File

@ -115,7 +115,7 @@ SIZE="3"
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN6408"
NAME="AEN6574"
></A
><H2
>Name</H2
@ -123,7 +123,7 @@ NAME="AEN6408"
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN6411"
NAME="AEN6577"
></A
><H2
>Synopsis</H2
@ -158,6 +158,40 @@ HREF="gnome-xml-xpath.html#XPATH-NUMBER"
HREF="gnome-xml-xpath.html#XPATH-STRING"
>XPATH_STRING</A
>
#define <A
HREF="gnome-xml-xpath.html#XPATH-USERS"
>XPATH_USERS</A
>
int (<A
HREF="gnome-xml-xpath.html#XMLXPATHCONVERTFUNC"
>*xmlXPathConvertFunc</A
>) (<GTKDOCLINK
HREF="XMLXPATHOBJECTPTR"
>xmlXPathObjectPtr</GTKDOCLINK
> obj,
int type);
void (<A
HREF="gnome-xml-xpath.html#XMLXPATHEVALFUNC"
>*xmlXPathEvalFunc</A
>) (<GTKDOCLINK
HREF="XMLXPATHPARSERCONTEXTPTR"
>xmlXPathParserContextPtr</GTKDOCLINK
> ctxt,
int nargs);
<GTKDOCLINK
HREF="XMLXPATHOBJECTPTR"
>xmlXPathObjectPtr</GTKDOCLINK
> (<A
HREF="gnome-xml-xpath.html#XMLXPATHAXISFUNC"
>*xmlXPathAxisFunc</A
>) (<GTKDOCLINK
HREF="XMLXPATHPARSERCONTEXTPTR"
>xmlXPathParserContextPtr</GTKDOCLINK
> ctxt,
<GTKDOCLINK
HREF="XMLXPATHOBJECTPTR"
>xmlXPathObjectPtr</GTKDOCLINK
> cur);
void (<A
HREF="gnome-xml-xpath.html#XMLXPATHFUNCTION"
>*xmlXPathFunction</A
@ -175,9 +209,7 @@ HREF="gnome-xml-xpath.html#XMLXPATHNEWCONTEXT"
> (<A
HREF="gnome-xml-tree.html#XMLDOCPTR"
>xmlDocPtr</A
> doc,
void *variables,
void *functions);
> doc);
void <A
HREF="gnome-xml-xpath.html#XMLXPATHFREECONTEXT"
>xmlXPathFreeContext</A
@ -227,7 +259,7 @@ HREF="XMLXPATHCONTEXTPTR"
><DIV
CLASS="REFSECT1"
><A
NAME="AEN6436"
NAME="AEN6611"
></A
><H2
>Description</H2
@ -237,14 +269,14 @@ NAME="AEN6436"
><DIV
CLASS="REFSECT1"
><A
NAME="AEN6439"
NAME="AEN6614"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
NAME="AEN6441"
NAME="AEN6616"
></A
><H3
><A
@ -260,7 +292,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XPATH_UNDEFINED 0</PRE
>#define XPATH_UNDEFINED</PRE
></TD
></TR
></TABLE
@ -270,7 +302,7 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6446"
NAME="AEN6621"
></A
><H3
><A
@ -286,7 +318,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XPATH_NODESET 1</PRE
>#define XPATH_NODESET</PRE
></TD
></TR
></TABLE
@ -296,7 +328,7 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6451"
NAME="AEN6626"
></A
><H3
><A
@ -312,7 +344,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XPATH_BOOLEAN 2</PRE
>#define XPATH_BOOLEAN</PRE
></TD
></TR
></TABLE
@ -322,7 +354,7 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6456"
NAME="AEN6631"
></A
><H3
><A
@ -338,7 +370,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XPATH_NUMBER 3</PRE
>#define XPATH_NUMBER</PRE
></TD
></TR
></TABLE
@ -348,7 +380,7 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6461"
NAME="AEN6636"
></A
><H3
><A
@ -364,7 +396,7 @@ CELLPADDING="6"
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XPATH_STRING 4</PRE
>#define XPATH_STRING</PRE
></TD
></TR
></TABLE
@ -374,7 +406,306 @@ CLASS="PROGRAMLISTING"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6466"
NAME="AEN6641"
></A
><H3
><A
NAME="XPATH-USERS"
></A
>XPATH_USERS</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>#define XPATH_USERS</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6646"
></A
><H3
><A
NAME="XMLXPATHCONVERTFUNC"
></A
>xmlXPathConvertFunc ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int (*xmlXPathConvertFunc) (<GTKDOCLINK
HREF="XMLXPATHOBJECTPTR"
>xmlXPathObjectPtr</GTKDOCLINK
> obj,
int type);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>obj</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>type</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6669"
></A
><H3
><A
NAME="XMLXPATHEVALFUNC"
></A
>xmlXPathEvalFunc ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void (*xmlXPathEvalFunc) (<GTKDOCLINK
HREF="XMLXPATHPARSERCONTEXTPTR"
>xmlXPathParserContextPtr</GTKDOCLINK
> ctxt,
int nargs);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>ctxt</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>nargs</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6688"
></A
><H3
><A
NAME="XMLXPATHAXISFUNC"
></A
>xmlXPathAxisFunc ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="XMLXPATHOBJECTPTR"
>xmlXPathObjectPtr</GTKDOCLINK
> (*xmlXPathAxisFunc) (<GTKDOCLINK
HREF="XMLXPATHPARSERCONTEXTPTR"
>xmlXPathParserContextPtr</GTKDOCLINK
> ctxt,
<GTKDOCLINK
HREF="XMLXPATHOBJECTPTR"
>xmlXPathObjectPtr</GTKDOCLINK
> cur);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>ctxt</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>cur</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6713"
></A
><H3
><A
@ -453,7 +784,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6485"
NAME="AEN6732"
></A
><H3
><A
@ -475,9 +806,7 @@ HREF="XMLXPATHCONTEXTPTR"
> xmlXPathNewContext (<A
HREF="gnome-xml-tree.html#XMLDOCPTR"
>xmlDocPtr</A
> doc,
void *variables,
void *functions);</PRE
> doc);</PRE
></TD
></TR
></TABLE
@ -511,41 +840,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the XML document</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>variables</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the variable list</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>functions</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the function list</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -560,7 +855,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the xmlXPathContext just allocated.</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -570,7 +865,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6514"
NAME="AEN6753"
></A
><H3
><A
@ -623,7 +918,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the context to free</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -633,7 +928,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6530"
NAME="AEN6769"
></A
><H3
><A
@ -693,7 +988,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the XPath expression</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -710,7 +1005,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the XPath context</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -725,8 +1020,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the xmlXPathObjectPtr resulting from the eveluation or NULL.
the caller has to free the object.</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -736,7 +1030,7 @@ the caller has to free the object.</TD
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6556"
NAME="AEN6795"
></A
><H3
><A
@ -789,7 +1083,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the object to free</TD
>&nbsp;</TD
></TR
></TABLE
><P
@ -799,7 +1093,7 @@ VALIGN="TOP"
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6572"
NAME="AEN6811"
></A
><H3
><A
@ -859,7 +1153,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the XPath expression</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -876,7 +1170,7 @@ CLASS="PARAMETER"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the XPath context</TD
>&nbsp;</TD
></TR
><TR
><TD
@ -891,8 +1185,7 @@ CLASS="EMPHASIS"
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the xmlXPathObjectPtr resulting from the evaluation or NULL.
the caller has to free the object.</TD
>&nbsp;</TD
></TR
></TABLE
><P

View File

@ -101,6 +101,7 @@
<ANCHOR id ="XMLDTDPTR" href="gnome-xml/gnome-xml-tree.html#XMLDTDPTR">
<ANCHOR id ="XMLATTRPTR" href="gnome-xml/gnome-xml-tree.html#XMLATTRPTR">
<ANCHOR id ="XMLIDPTR" href="gnome-xml/gnome-xml-tree.html#XMLIDPTR">
<ANCHOR id ="XMLREFPTR" href="gnome-xml/gnome-xml-tree.html#XMLREFPTR">
<ANCHOR id ="XMLNODE" href="gnome-xml/gnome-xml-tree.html#XMLNODE">
<ANCHOR id ="XMLNODEPTR" href="gnome-xml/gnome-xml-tree.html#XMLNODEPTR">
<ANCHOR id ="XMLDOC" href="gnome-xml/gnome-xml-tree.html#XMLDOC">
@ -176,6 +177,8 @@
<ANCHOR id ="XMLNODEGETCONTENT" href="gnome-xml/gnome-xml-tree.html#XMLNODEGETCONTENT">
<ANCHOR id ="XMLNODEGETLANG" href="gnome-xml/gnome-xml-tree.html#XMLNODEGETLANG">
<ANCHOR id ="XMLNODESETLANG" href="gnome-xml/gnome-xml-tree.html#XMLNODESETLANG">
<ANCHOR id ="XMLREMOVEPROP" href="gnome-xml/gnome-xml-tree.html#XMLREMOVEPROP">
<ANCHOR id ="XMLREMOVENODE" href="gnome-xml/gnome-xml-tree.html#XMLREMOVENODE">
<ANCHOR id ="XMLBUFFERWRITECHAR" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERWRITECHAR">
<ANCHOR id ="XMLBUFFERWRITECHAR" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERWRITECHAR">
<ANCHOR id ="XMLBUFFERWRITEQUOTEDSTRING" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERWRITEQUOTEDSTRING">
@ -221,6 +224,8 @@
<ANCHOR id ="XMLATTRIBUTETABLEPTR" href="gnome-xml/gnome-xml-valid.html#XMLATTRIBUTETABLEPTR">
<ANCHOR id ="XML-MIN-ID-TABLE" href="gnome-xml/gnome-xml-valid.html#XML-MIN-ID-TABLE">
<ANCHOR id ="XMLIDTABLEPTR" href="gnome-xml/gnome-xml-valid.html#XMLIDTABLEPTR">
<ANCHOR id ="XML-MIN-REF-TABLE" href="gnome-xml/gnome-xml-valid.html#XML-MIN-REF-TABLE">
<ANCHOR id ="XMLREFTABLEPTR" href="gnome-xml/gnome-xml-valid.html#XMLREFTABLEPTR">
<ANCHOR id ="XMLADDNOTATIONDECL" href="gnome-xml/gnome-xml-valid.html#XMLADDNOTATIONDECL">
<ANCHOR id ="XMLCOPYNOTATIONTABLE" href="gnome-xml/gnome-xml-valid.html#XMLCOPYNOTATIONTABLE">
<ANCHOR id ="XMLFREENOTATIONTABLE" href="gnome-xml/gnome-xml-valid.html#XMLFREENOTATIONTABLE">
@ -244,6 +249,10 @@
<ANCHOR id ="XMLFREEIDTABLE" href="gnome-xml/gnome-xml-valid.html#XMLFREEIDTABLE">
<ANCHOR id ="XMLGETID" href="gnome-xml/gnome-xml-valid.html#XMLGETID">
<ANCHOR id ="XMLISID" href="gnome-xml/gnome-xml-valid.html#XMLISID">
<ANCHOR id ="XMLADDREF" href="gnome-xml/gnome-xml-valid.html#XMLADDREF">
<ANCHOR id ="XMLCOPYREFTABLE" href="gnome-xml/gnome-xml-valid.html#XMLCOPYREFTABLE">
<ANCHOR id ="XMLFREEREFTABLE" href="gnome-xml/gnome-xml-valid.html#XMLFREEREFTABLE">
<ANCHOR id ="XMLISREF" href="gnome-xml/gnome-xml-valid.html#XMLISREF">
<ANCHOR id ="XMLVALIDATEROOT" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEROOT">
<ANCHOR id ="XMLVALIDATEELEMENTDECL" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEELEMENTDECL">
<ANCHOR id ="XMLVALIDATEATTRIBUTEDECL" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEATTRIBUTEDECL">
@ -254,12 +263,14 @@
<ANCHOR id ="XMLVALIDATEELEMENT" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEELEMENT">
<ANCHOR id ="XMLVALIDATEONEELEMENT" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEONEELEMENT">
<ANCHOR id ="XMLVALIDATEONEATTRIBUTE" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEONEATTRIBUTE">
<ANCHOR id ="XMLVALIDATEDOCUMENTFINAL" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATEDOCUMENTFINAL">
<ANCHOR id ="XMLVALIDATENOTATIONUSE" href="gnome-xml/gnome-xml-valid.html#XMLVALIDATENOTATIONUSE">
<ANCHOR id ="XMLISMIXEDELEMENT" href="gnome-xml/gnome-xml-valid.html#XMLISMIXEDELEMENT">
<ANCHOR id ="XMLGETDTDATTRDESC" href="gnome-xml/gnome-xml-valid.html#XMLGETDTDATTRDESC">
<ANCHOR id ="XMLGETDTDNOTATIONDESC" href="gnome-xml/gnome-xml-valid.html#XMLGETDTDNOTATIONDESC">
<ANCHOR id ="XMLGETDTDELEMENTDESC" href="gnome-xml/gnome-xml-valid.html#XMLGETDTDELEMENTDESC">
<ANCHOR id ="GNOME-XML-XML-ERROR" href="gnome-xml/gnome-xml-xml-error.html">
<ANCHOR id ="XMLPARSERERRORS" href="gnome-xml/gnome-xml-xml-error.html#XMLPARSERERRORS">
<ANCHOR id ="XMLPARSERERROR" href="gnome-xml/gnome-xml-xml-error.html#XMLPARSERERROR">
<ANCHOR id ="XMLPARSERWARNING" href="gnome-xml/gnome-xml-xml-error.html#XMLPARSERWARNING">
<ANCHOR id ="XMLPARSERVALIDITYERROR" href="gnome-xml/gnome-xml-xml-error.html#XMLPARSERVALIDITYERROR">
@ -298,6 +309,10 @@
<ANCHOR id ="XPATH-BOOLEAN" href="gnome-xml/gnome-xml-xpath.html#XPATH-BOOLEAN">
<ANCHOR id ="XPATH-NUMBER" href="gnome-xml/gnome-xml-xpath.html#XPATH-NUMBER">
<ANCHOR id ="XPATH-STRING" href="gnome-xml/gnome-xml-xpath.html#XPATH-STRING">
<ANCHOR id ="XPATH-USERS" href="gnome-xml/gnome-xml-xpath.html#XPATH-USERS">
<ANCHOR id ="XMLXPATHCONVERTFUNC" href="gnome-xml/gnome-xml-xpath.html#XMLXPATHCONVERTFUNC">
<ANCHOR id ="XMLXPATHEVALFUNC" href="gnome-xml/gnome-xml-xpath.html#XMLXPATHEVALFUNC">
<ANCHOR id ="XMLXPATHAXISFUNC" href="gnome-xml/gnome-xml-xpath.html#XMLXPATHAXISFUNC">
<ANCHOR id ="XMLXPATHFUNCTION" href="gnome-xml/gnome-xml-xpath.html#XMLXPATHFUNCTION">
<ANCHOR id ="XMLXPATHNEWCONTEXT" href="gnome-xml/gnome-xml-xpath.html#XMLXPATHNEWCONTEXT">
<ANCHOR id ="XMLXPATHFREECONTEXT" href="gnome-xml/gnome-xml-xpath.html#XMLXPATHFREECONTEXT">
@ -393,7 +408,6 @@
<ANCHOR id ="INPUTPUSH" href="gnome-xml/gnome-xml-parserinternals.html#INPUTPUSH">
<ANCHOR id ="INPUTPOP" href="gnome-xml/gnome-xml-parserinternals.html#INPUTPOP">
<ANCHOR id ="GNOME-XML-XMLMEMORY" href="gnome-xml/gnome-xml-xmlmemory.html">
<ANCHOR id ="NO-DEBUG-MEMORY" href="gnome-xml/gnome-xml-xmlmemory.html#NO-DEBUG-MEMORY">
<ANCHOR id ="XMLFREE" href="gnome-xml/gnome-xml-xmlmemory.html#XMLFREE">
<ANCHOR id ="XMLMALLOC" href="gnome-xml/gnome-xml-xmlmemory.html#XMLMALLOC">
<ANCHOR id ="XMLREALLOC" href="gnome-xml/gnome-xml-xmlmemory.html#XMLREALLOC">
@ -408,3 +422,11 @@
<ANCHOR id ="XMLMALLOCLOC" href="gnome-xml/gnome-xml-xmlmemory.html#XMLMALLOCLOC">
<ANCHOR id ="XMLREALLOCLOC" href="gnome-xml/gnome-xml-xmlmemory.html#XMLREALLOCLOC">
<ANCHOR id ="XMLMEMSTRDUPLOC" href="gnome-xml/gnome-xml-xmlmemory.html#XMLMEMSTRDUPLOC">
<ANCHOR id ="GNOME-XML-NANOHTTP" href="gnome-xml/gnome-xml-nanohttp.html">
<ANCHOR id ="XMLNANOHTTPFETCH" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPFETCH">
<ANCHOR id ="XMLNANOHTTPMETHOD" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPMETHOD">
<ANCHOR id ="XMLNANOHTTPOPEN" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPOPEN">
<ANCHOR id ="XMLNANOHTTPRETURNCODE" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPRETURNCODE">
<ANCHOR id ="XMLNANOHTTPREAD" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPREAD">
<ANCHOR id ="XMLNANOHTTPSAVE" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPSAVE">
<ANCHOR id ="XMLNANOHTTPCLOSE" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPCLOSE">

View File

@ -19,10 +19,16 @@
* Daniel.Veillard@w3.org
*/
#ifndef WIN32
#include "config.h"
#include <ctype.h>
#include <string.h>
#endif
#include <stdio.h>
#include <string.h>
#ifdef HAVE_CTYPE_H
#include <ctype.h>
#endif
#include "encoding.h"
#ifdef HAVE_UNICODE_H
#include <unicode.h>

View File

@ -6,9 +6,15 @@
* Daniel.Veillard@w3.org
*/
#ifndef WIN32
#include "config.h"
#endif
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#include "xmlmemory.h"
#include "entities.h"

View File

@ -105,25 +105,13 @@ typedef struct _xmlParserCtxt {
struct xmlSAXHandler *sax; /* The SAX handler */
void *userData; /* the document being built */
xmlDocPtr myDoc; /* the document being built */
int wellFormed; /* is the document well formed */
int replaceEntities; /* shall we replace entities ? */
const CHAR *version; /* the XML version string */
const CHAR *encoding; /* encoding, if any */
int standalone; /* standalone document */
int hasExternalSubset; /* reference and external subset */
int hasPErefs; /* the internal subset has PE refs */
int html; /* are we parsing an HTML document */
int external; /* are we parsing an external entity */
int wellFormed; /* is the document well formed */
int valid; /* is the document valid */
int validate; /* shall we try to validate ? */
xmlValidCtxt vctxt; /* The validity context */
xmlParserInputState instate; /* current type of input */
int token; /* next char look-ahead */
char *directory; /* the data directory */
/* Input stream stack */
xmlParserInputPtr input; /* Current input stream */
int inputNr; /* Number of current input streams */
@ -138,6 +126,21 @@ typedef struct _xmlParserCtxt {
int record_info; /* Whether node info should be kept */
xmlParserNodeInfoSeq node_seq; /* info about each node parsed */
int errno; /* error code */
int hasExternalSubset; /* reference and external subset */
int hasPErefs; /* the internal subset has PE refs */
int external; /* are we parsing an external entity */
int valid; /* is the document valid */
int validate; /* shall we try to validate ? */
xmlValidCtxt vctxt; /* The validity context */
xmlParserInputState instate; /* current type of input */
int token; /* next char look-ahead */
char *directory; /* the data directory */
} _xmlParserCtxt;
typedef _xmlParserCtxt xmlParserCtxt;
typedef xmlParserCtxt *xmlParserCtxtPtr;

View File

@ -23,6 +23,7 @@ typedef struct xmlParserInputBuffer {
FILE *file; /* Input on file handler */
void* gzfile; /* Input on a compressed stream */
int fd; /* Input on a file descriptor */
void *netIO; /* Input from a network stream */
xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */

View File

@ -8,7 +8,7 @@
#ifndef _DEBUG_MEMORY_ALLOC_
#define _DEBUG_MEMORY_ALLOC_
#define NO_DEBUG_MEMORY
/* #define NO_DEBUG_MEMORY */
#ifdef NO_DEBUG_MEMORY
#ifdef HAVE_MALLOC_H

316
parser.c

File diff suppressed because it is too large Load Diff

View File

@ -105,25 +105,13 @@ typedef struct _xmlParserCtxt {
struct xmlSAXHandler *sax; /* The SAX handler */
void *userData; /* the document being built */
xmlDocPtr myDoc; /* the document being built */
int wellFormed; /* is the document well formed */
int replaceEntities; /* shall we replace entities ? */
const CHAR *version; /* the XML version string */
const CHAR *encoding; /* encoding, if any */
int standalone; /* standalone document */
int hasExternalSubset; /* reference and external subset */
int hasPErefs; /* the internal subset has PE refs */
int html; /* are we parsing an HTML document */
int external; /* are we parsing an external entity */
int wellFormed; /* is the document well formed */
int valid; /* is the document valid */
int validate; /* shall we try to validate ? */
xmlValidCtxt vctxt; /* The validity context */
xmlParserInputState instate; /* current type of input */
int token; /* next char look-ahead */
char *directory; /* the data directory */
/* Input stream stack */
xmlParserInputPtr input; /* Current input stream */
int inputNr; /* Number of current input streams */
@ -138,6 +126,21 @@ typedef struct _xmlParserCtxt {
int record_info; /* Whether node info should be kept */
xmlParserNodeInfoSeq node_seq; /* info about each node parsed */
int errno; /* error code */
int hasExternalSubset; /* reference and external subset */
int hasPErefs; /* the internal subset has PE refs */
int external; /* are we parsing an external entity */
int valid; /* is the document valid */
int validate; /* shall we try to validate ? */
xmlValidCtxt vctxt; /* The validity context */
xmlParserInputState instate; /* current type of input */
int token; /* next char look-ahead */
char *directory; /* the data directory */
} _xmlParserCtxt;
typedef _xmlParserCtxt xmlParserCtxt;
typedef xmlParserCtxt *xmlParserCtxtPtr;

View File

@ -10,9 +10,15 @@
#define HAVE_FCNTL_H
#include <io.h>
#else
#include <config.h>
#include "config.h"
#endif
#include <stdio.h>
#include <string.h>
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_SYS_STAT_H
#include <sys/stat.h>
#endif
@ -22,9 +28,9 @@
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
#include <stdio.h>
#include <string.h>
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#include "HTMLparser.h"
#include "HTMLtree.h"

View File

@ -10,9 +10,16 @@
#define HAVE_FCNTL_H
#include <io.h>
#else
#include <config.h>
#include "config.h"
#endif
#include <stdio.h>
#include <string.h>
#include <stdarg.h>
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_SYS_STAT_H
#include <sys/stat.h>
#endif
@ -22,10 +29,10 @@
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
#include <stdio.h>
#include <string.h>
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#include <stdarg.h>
#endif
#include "parser.h"
#include "parserInternals.h" /* only for xmlNewInputFromFile() */

View File

@ -10,9 +10,15 @@
#define HAVE_FCNTL_H
#include <io.h>
#else
#include <config.h>
#include "config.h"
#endif
#include <stdio.h>
#include <string.h>
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_SYS_STAT_H
#include <sys/stat.h>
#endif
@ -22,9 +28,10 @@
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
#include <stdio.h>
#include <string.h>
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#include "xpath.h"
#include "tree.h"

View File

@ -10,9 +10,15 @@
#define HAVE_FCNTL_H
#include <io.h>
#else
#include <config.h>
#include "config.h"
#endif
#include <stdio.h>
#include <string.h>
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_SYS_STAT_H
#include <sys/stat.h>
#endif
@ -22,9 +28,9 @@
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
#include <stdio.h>
#include <string.h>
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#include "xmlmemory.h"
#include "parser.h"

14
tree.c
View File

@ -6,12 +6,22 @@
* Daniel.Veillard@w3.org
*/
#ifdef WIN32
#define HAVE_FCNTL_H
#include <io.h>
#else
#include "config.h"
#endif
#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>
#include <string.h> /* for memset() only ! */
#ifdef HAVE_CTYPE_H
#include <ctype.h>
#endif
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#ifdef HAVE_ZLIB_H
#include <zlib.h>
#endif

13
valid.c
View File

@ -7,9 +7,20 @@
* Daniel.Veillard@w3.org
*/
#ifdef WIN32
#define HAVE_FCNTL_H
#include <io.h>
#else
#include "config.h"
#endif
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#include "xmlmemory.h"
#include "valid.h"
#include "parser.h"

View File

@ -1,8 +1,121 @@
#ifndef error_h_
#define error_h_
#ifndef __XML_ERROR_H__
#define __XML_ERROR_H__
#include "parser.h"
typedef enum {
XML_ERR_OK = 0,
XML_ERR_INTERNAL_ERROR,
XML_ERR_NO_MEMORY,
XML_ERR_DOCUMENT_START,
XML_ERR_DOCUMENT_EMPTY,
XML_ERR_DOCUMENT_END,
XML_ERR_INVALID_HEX_CHARREF,
XML_ERR_INVALID_DEC_CHARREF,
XML_ERR_INVALID_CHARREF,
XML_ERR_INVALID_CHAR,
XML_ERR_CHARREF_AT_EOF,
XML_ERR_CHARREF_IN_PROLOG,
XML_ERR_CHARREF_IN_EPILOG,
XML_ERR_CHARREF_IN_DTD,
XML_ERR_ENTITYREF_AT_EOF,
XML_ERR_ENTITYREF_IN_PROLOG,
XML_ERR_ENTITYREF_IN_EPILOG,
XML_ERR_ENTITYREF_IN_DTD,
XML_ERR_PEREF_AT_EOF,
XML_ERR_PEREF_IN_PROLOG,
XML_ERR_PEREF_IN_EPILOG,
XML_ERR_PEREF_IN_INT_SUBSET,
XML_ERR_ENTITYREF_NO_NAME,
XML_ERR_ENTITYREF_SEMICOL_MISSING,
XML_ERR_PEREF_NO_NAME,
XML_ERR_PEREF_SEMICOL_MISSING,
XML_ERR_UNDECLARED_ENTITY,
XML_WAR_UNDECLARED_ENTITY,
XML_ERR_UNPARSED_ENTITY,
XML_ERR_ENTITY_IS_EXTERNAL,
XML_ERR_ENTITY_IS_PARAMETER,
XML_ERR_UNKNOWN_ENCODING,
XML_ERR_UNSUPPORTED_ENCODING,
XML_ERR_STRING_NOT_STARTED,
XML_ERR_STRING_NOT_CLOSED,
XML_ERR_NS_DECL_ERROR,
XML_ERR_ENTITY_NOT_STARTED,
XML_ERR_ENTITY_NOT_FINISHED,
XML_ERR_LT_IN_ATTRIBUTE,
XML_ERR_ATTRIBUTE_NOT_STARTED,
XML_ERR_ATTRIBUTE_NOT_FINISHED,
XML_ERR_ATTRIBUTE_WITHOUT_VALUE,
XML_ERR_ATTRIBUTE_REDEFINED,
XML_ERR_LITERAL_NOT_STARTED,
XML_ERR_LITERAL_NOT_FINISHED,
XML_ERR_COMMENT_NOT_FINISHED,
XML_ERR_PI_NOT_STARTED,
XML_ERR_PI_NOT_FINISHED,
XML_ERR_NOTATION_NOT_STARTED,
XML_ERR_NOTATION_NOT_FINISHED,
XML_ERR_ATTLIST_NOT_STARTED,
XML_ERR_ATTLIST_NOT_FINISHED,
XML_ERR_MIXED_NOT_STARTED,
XML_ERR_MIXED_NOT_FINISHED,
XML_ERR_ELEMCONTENT_NOT_STARTED,
XML_ERR_ELEMCONTENT_NOT_FINISHED,
XML_ERR_XMLDECL_NOT_STARTED,
XML_ERR_XMLDECL_NOT_FINISHED,
XML_ERR_CONDSEC_NOT_STARTED,
XML_ERR_CONDSEC_NOT_FINISHED,
XML_ERR_EXT_SUBSET_NOT_FINISHED,
XML_ERR_DOCTYPE_NOT_FINISHED,
XML_ERR_MISPLACED_CDATA_END,
XML_ERR_CDATA_NOT_FINISHED,
XML_ERR_RESERVED_XML_NAME,
XML_ERR_SPACE_REQUIRED,
XML_ERR_SEPARATOR_REQUIRED,
XML_ERR_NMTOKEN_REQUIRED,
XML_ERR_NAME_REQUIRED,
XML_ERR_PCDATA_REQUIRED,
XML_ERR_URI_REQUIRED,
XML_ERR_PUBID_REQUIRED,
XML_ERR_LT_REQUIRED,
XML_ERR_GT_REQUIRED,
XML_ERR_LTSLASH_REQUIRED,
XML_ERR_EQUAL_REQUIRED,
XML_ERR_TAG_NAME_MISMATCH,
XML_ERR_TAG_NOT_FINISED,
XML_ERR_STANDALONE_VALUE,
XML_ERR_ENCODING_NAME,
XML_ERR_HYPHEN_IN_COMMENT
}xmlParserErrors;
void xmlParserError (void *ctx,
const char *msg,
...);
@ -17,4 +130,5 @@ void xmlParserValidityWarning(void *ctx,
...);
void xmlParserPrintFileInfo (xmlParserInputPtr input);
void xmlParserPrintFileContext(xmlParserInputPtr input);
#endif
#endif /* __XML_ERROR_H__ */

41
xmlIO.c
View File

@ -6,22 +6,39 @@
* Daniel.Veillard@w3.org
*/
#ifdef WIN32
#define HAVE_FCNTL_H
#include <io.h>
#else
#include "config.h"
#endif
#include <stdio.h>
#include <string.h>
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_SYS_STAT_H
#include <sys/stat.h>
#endif
#ifdef HAVE_FCNTL_H
#include <fcntl.h>
#endif
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#ifdef HAVE_ZLIB_H
#include <zlib.h>
#endif
#include <string.h>
#include "xmlmemory.h"
#include "parser.h"
#include "xmlIO.h"
#include "nanohttp.h"
/* #define DEBUG_INPUT */
/* #define VERBOSE_FAILURE */
@ -54,6 +71,7 @@ xmlAllocParserInputBuffer(xmlCharEncoding enc) {
ret->buffer = xmlBufferCreate();
ret->encoder = xmlGetCharEncodingHandler(enc);
ret->fd = -1;
ret->netIO = NULL;
return(ret);
}
@ -74,6 +92,8 @@ xmlFreeParserInputBuffer(xmlParserInputBufferPtr in) {
if (in->gzfile != NULL)
gzclose(in->gzfile);
#endif
if (in->netIO != NULL)
xmlNanoHTTPClose(in->netIO);
if (in->fd >= 0)
close(in->fd);
memset(in, 0xbe, (size_t) sizeof(xmlParserInputBuffer));
@ -96,14 +116,24 @@ xmlParserInputBufferPtr
xmlParserInputBufferCreateFilename(const char *filename, xmlCharEncoding enc) {
xmlParserInputBufferPtr ret;
#ifdef HAVE_ZLIB_H
gzFile input;
gzFile input = 0;
#else
int input = -1;
#endif
void *netIO = NULL;
if (filename == NULL) return(NULL);
if (!strcmp(filename, "-")) {
if (!strncmp(filename, "http://", 7)) {
netIO = xmlNanoHTTPOpen(filename, NULL);
if (netIO == NULL) {
#ifdef VERBOSE_FAILURE
fprintf (stderr, "Cannot read URL %s\n", filename);
perror ("xmlNanoHTTPOpen failed");
#endif
return(NULL);
}
} else if (!strcmp(filename, "-")) {
#ifdef HAVE_ZLIB_H
input = gzdopen (fileno(stdin), "r");
if (input == NULL) {
@ -166,6 +196,7 @@ xmlParserInputBufferCreateFilename(const char *filename, xmlCharEncoding enc) {
#else
ret->fd = input;
#endif
ret->netIO = netIO;
}
xmlParserInputBufferRead(ret, 4);
@ -255,7 +286,9 @@ xmlParserInputBufferGrow(xmlParserInputBufferPtr in, int len) {
fprintf(stderr, "xmlParserInputBufferGrow : out of memory !\n");
return(-1);
}
if (in->file != NULL) {
if (in->netIO != NULL) {
res = xmlNanoHTTPRead(in->netIO, &buffer[0], len);
} else if (in->file != NULL) {
res = fread(&buffer[0], 1, len, in->file);
#ifdef HAVE_ZLIB_H
} else if (in->gzfile != NULL) {

View File

@ -23,6 +23,7 @@ typedef struct xmlParserInputBuffer {
FILE *file; /* Input on file handler */
void* gzfile; /* Input on a compressed stream */
int fd; /* Input on a file descriptor */
void *netIO; /* Input from a network stream */
xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */

View File

@ -4,10 +4,26 @@
* Daniel.Veillard@w3.org
*/
#include <sys/types.h>
#include <string.h>
#ifdef WIN32
#define HAVE_FCNTL_H
#include <io.h>
#else
#include "config.h"
#endif
#include <stdio.h>
#include <string.h>
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_TIME_H
#include <time.h>
#endif
#ifdef HAVE_MALLOC_H
#include <malloc.h>
#endif
#include "xmlmemory.h"
#ifndef NO_DEBUG_MEMORY
@ -103,8 +119,8 @@ xmlMallocLoc(int size, const char * file, int line)
p = (MEMHDR *) malloc(RESERVE_SIZE+size);
if (!p) {
fprintf(stderr, "xmlMalloc : Out of free space\n");
xmlMemoryDump();
fprintf(stderr, "xmlMalloc : Out of free space\n");
xmlMemoryDump();
}
p->mh_tag = MEMTAG;
p->mh_number = ++block;
@ -165,7 +181,7 @@ xmlReallocLoc(void *ptr,int size, const char * file, int line)
p = CLIENT_2_HDR(ptr);
number = p->mh_number;
if (p->mh_tag != MEMTAG) {
Mem_Tag_Err(p);
Mem_Tag_Err(p);
goto error;
}
p->mh_tag = ~MEMTAG;
@ -231,8 +247,8 @@ xmlFree(void *ptr)
p = CLIENT_2_HDR(ptr);
if (p->mh_tag != MEMTAG) {
Mem_Tag_Err(p);
goto error;
Mem_Tag_Err(p);
goto error;
}
p->mh_tag = ~MEMTAG;
debugMemSize -= p->mh_size;
@ -273,7 +289,7 @@ xmlMemStrdupLoc(const char *str, const char *file, int line)
p = (MEMHDR *) malloc(RESERVE_SIZE+size);
if (!p) {
goto error;
goto error;
}
p->mh_tag = MEMTAG;
p->mh_number = ++block;
@ -288,9 +304,9 @@ xmlMemStrdupLoc(const char *str, const char *file, int line)
s = HDR_2_CLIENT(p);
if (s != NULL)
strcpy(s,str);
strcpy(s,str);
else
goto error;
goto error;
TEST_POINT
@ -339,29 +355,40 @@ void
xmlMemDisplay(FILE *fp)
{
#ifdef MEM_LIST
MEMHDR *p;
int idx;
MEMHDR *p;
int idx;
#if defined(HAVE_LOCALTIME) && defined(HAVE_STRFTIME)
time_t currentTime;
char buf[500];
struct tm * tstruct;
currentTime = time(NULL);
tstruct = localtime(&currentTime);
strftime(buf, sizeof(buf) - 1, "%c", tstruct);
fprintf(fp," %s\n\n", buf);
#endif
fprintf(fp," MEMORY ALLOCATED : %lu\n",debugMemSize);
fprintf(fp,"BLOCK NUMBER SIZE TYPE\n");
idx = 0;
p = memlist;
while (p) {
fprintf(fp," MEMORY ALLOCATED : %lu\n",debugMemSize);
fprintf(fp,"BLOCK NUMBER SIZE TYPE\n");
idx = 0;
p = memlist;
while (p) {
fprintf(fp,"%-5u %6lu %6u ",idx++,p->mh_number,p->mh_size);
switch (p->mh_type) {
case STRDUP_TYPE:fprintf(fp,"strdup() in ");break;
case MALLOC_TYPE:fprintf(fp,"malloc() in ");break;
case REALLOC_TYPE:fprintf(fp,"realloc() in ");break;
default:fprintf(fp," ??? in ");break;
}
switch (p->mh_type) {
case STRDUP_TYPE:fprintf(fp,"strdup() in ");break;
case MALLOC_TYPE:fprintf(fp,"malloc() in ");break;
case REALLOC_TYPE:fprintf(fp,"realloc() in ");break;
default:fprintf(fp," ??? in ");break;
}
if (p->mh_file != NULL) fprintf(fp,"%s(%d)", p->mh_file, p->mh_line);
if (p->mh_tag != MEMTAG)
if (p->mh_tag != MEMTAG)
fprintf(fp," INVALID");
fprintf(fp,"\n");
p = p->mh_next;
}
fprintf(fp,"\n");
p = p->mh_next;
}
#else
fprintf(fp,"Memory list not compiled (MEM_LIST not defined !)\n");
fprintf(fp,"Memory list not compiled (MEM_LIST not defined !)\n");
#endif
}
@ -369,26 +396,26 @@ xmlMemDisplay(FILE *fp)
void debugmem_list_add(MEMHDR *p)
{
p->mh_next = memlist;
p->mh_prev = NULL;
if (memlist) memlist->mh_prev = p;
memlist = p;
p->mh_next = memlist;
p->mh_prev = NULL;
if (memlist) memlist->mh_prev = p;
memlist = p;
#ifdef MEM_LIST_DEBUG
if (stderr)
Mem_Display(stderr);
if (stderr)
Mem_Display(stderr);
#endif
}
void debugmem_list_delete(MEMHDR *p)
{
if (p->mh_next)
p->mh_next->mh_prev = p->mh_prev;
if (p->mh_prev)
p->mh_prev->mh_next = p->mh_next;
else memlist = p->mh_next;
if (p->mh_next)
p->mh_next->mh_prev = p->mh_prev;
if (p->mh_prev)
p->mh_prev->mh_next = p->mh_next;
else memlist = p->mh_next;
#ifdef MEM_LIST_DEBUG
if (stderr)
Mem_Display(stderr);
if (stderr)
Mem_Display(stderr);
#endif
}
@ -400,10 +427,10 @@ void debugmem_list_delete(MEMHDR *p)
void debugmem_tag_error(void *p)
{
fprintf(stderr, "Memory tag error occurs :%p \n\t bye\n", p);
fprintf(stderr, "Memory tag error occurs :%p \n\t bye\n", p);
#ifdef MEM_LIST
if (stderr)
xmlMemDisplay(stderr);
if (stderr)
xmlMemDisplay(stderr);
#endif
}

View File

@ -8,7 +8,7 @@
#ifndef _DEBUG_MEMORY_ALLOC_
#define _DEBUG_MEMORY_ALLOC_
#define NO_DEBUG_MEMORY
/* #define NO_DEBUG_MEMORY */
#ifdef NO_DEBUG_MEMORY
#ifdef HAVE_MALLOC_H

18
xpath.c
View File

@ -13,7 +13,19 @@
* Author: Daniel.Veillard@w3.org
*/
#include <config.h>
#ifdef WIN32
#define HAVE_FCNTL_H
#include <io.h>
#else
#include "config.h"
#endif
#include <stdio.h>
#include <string.h>
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#ifdef HAVE_MATH_H
#include <math.h>
#endif
@ -26,8 +38,10 @@
#ifdef HAVE_NAN_H
#include <nan.h>
#endif
#include <stdio.h>
#ifdef HAVE_CTYPE_H
#include <ctype.h>
#endif
#include "xmlmemory.h"
#include "tree.h"
#include "valid.h"