Makefile:2:# Makefile.in generated automatically by automake 1.4-p5 from Makefile.am
Makefile:4:# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
Makefile:48:INSTALL = /usr/bin/install -c
Makefile:50:INSTALL_DATA = ${INSTALL} -m 644
Makefile:60:host_alias = i686-pc-linux-gnu
Makefile:61:host_triplet = i686-pc-linux-gnu
Makefile:62:AKAXISO_INCLUDES = -I/home/smorino/akaxiso/akaxiso20 -I/home/smorino/opensource/xerces-c-src_2_5_0/include
Makefile:64:AKAXISO_LDFLAGS = -L/home/smorino/opensource/xerces-c-src_2_5_0/lib -lxerces-c
Makefile:67:CPPUNIT_INCLUDES = -I/usr/local/include
Makefile:68:CPPUNIT_LDFLAGS = -L/usr/local/lib -lcppunit -ldl
Makefile:78:LN_S = ln -s
Makefile:85:VERSION = 2.0-beta0
Makefile:86:XERCES_INCLUDES = -I/home/smorino/opensource/xerces-c-src_2_5_0/include
Makefile:87:XERCES_LDFLAGS = -L/home/smorino/opensource/xerces-c-src_2_5_0/lib -lxerces-c
Makefile:89:INCLUDES = -I${top_srcdir}
Makefile:99:DEFS = -DHAVE_CONFIG_H -I. -I$(srcdir) -I../../../akaxiso
Makefile:106:CFLAGS = -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions
Makefile:108:LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
Makefile:110:LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
Makefile:117:GZIP_ENV = --best
Makefile:122:all: all-redirect
Makefile:126:	cd $(top_srcdir) && $(AUTOMAKE) --gnu akaxiso/expat/lib/Makefile
Makefile:133:mostlyclean-noinstLTLIBRARIES:
Makefile:135:clean-noinstLTLIBRARIES:
Makefile:136:	-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
Makefile:138:distclean-noinstLTLIBRARIES:
Makefile:140:maintainer-clean-noinstLTLIBRARIES:
Makefile:145:	$(COMPILE) -c `cygpath -w $<`
Makefile:148:	$(COMPILE) -c $<
Makefile:151:	$(COMPILE) -c $<
Makefile:153:mostlyclean-compile:
Makefile:154:	-rm -f *.o core *.core
Makefile:155:	-rm -f *.$(OBJEXT)
Makefile:157:clean-compile:
Makefile:159:distclean-compile:
Makefile:160:	-rm -f *.tab.c
Makefile:162:maintainer-clean-compile:
Makefile:165:	$(LIBTOOL) --mode=compile $(COMPILE) -c $<
Makefile:168:	$(LIBTOOL) --mode=compile $(COMPILE) -c $<
Makefile:170:mostlyclean-libtool:
Makefile:171:	-rm -f *.lo
Makefile:173:clean-libtool:
Makefile:174:	-rm -rf .libs _libs
Makefile:176:distclean-libtool:
Makefile:178:maintainer-clean-libtool:
Makefile:191:	  && mkid -f$$here/ID $$unique $(LISP)
Makefile:200:	test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
Makefile:201:	  || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags  $$unique $(LISP) -o $$here/TAGS)
Makefile:203:mostlyclean-tags:
Makefile:205:clean-tags:
Makefile:207:distclean-tags:
Makefile:208:	-rm -f TAGS ID
Makefile:210:maintainer-clean-tags:
Makefile:212:distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
Makefile:221:	  && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu akaxiso/expat/lib/Makefile
Makefile:224:	  if test -d $$d/$$file; then \
Makefile:225:	    cp -pr $$d/$$file $(distdir)/$$file; \
Makefile:227:	    test -f $(distdir)/$$file \
Makefile:229:	    || cp -p $$d/$$file $(distdir)/$$file || :; \
Makefile:235:-include $(DEP_FILES)
Makefile:237:mostlyclean-depend:
Makefile:239:clean-depend:
Makefile:241:distclean-depend:
Makefile:242:	-rm -rf .deps
Makefile:244:maintainer-clean-depend:
Makefile:247:	@echo '$(COMPILE) -c $<'; \
Makefile:248:	$(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
Makefile:249:	@-cp .deps/$(*F).pp .deps/$(*F).P; \
Makefile:251:	  | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
Makefile:256:	@echo '$(LTCOMPILE) -c $<'; \
Makefile:257:	$(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
Makefile:258:	@-sed -e 's/^\([^:]*\)\.o[ 	]*:/\1.lo \1.o :/' \
Makefile:261:	  | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
Makefile:263:	rm -f .deps/$(*F).pp
Makefile:264:info-am:
Makefile:265:info: info-am
Makefile:266:dvi-am:
Makefile:267:dvi: dvi-am
Makefile:268:check-am: all-am
Makefile:269:check: check-am
Makefile:270:installcheck-am:
Makefile:271:installcheck: installcheck-am
Makefile:272:install-exec-am:
Makefile:273:install-exec: install-exec-am
Makefile:275:install-data-am:
Makefile:276:install-data: install-data-am
Makefile:278:install-am: all-am
Makefile:279:	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
Makefile:280:install: install-am
Makefile:281:uninstall-am:
Makefile:282:uninstall: uninstall-am
Makefile:283:all-am: Makefile $(LTLIBRARIES)
Makefile:284:all-redirect: all-am
Makefile:285:install-strip:
Makefile:286:	$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
Makefile:290:mostlyclean-generic:
Makefile:292:clean-generic:
Makefile:294:distclean-generic:
Makefile:295:	-rm -f Makefile $(CONFIG_CLEAN_FILES)
Makefile:296:	-rm -f config.cache config.log stamp-h stamp-h[0-9]*
Makefile:298:maintainer-clean-generic:
Makefile:299:mostlyclean-am:  mostlyclean-noinstLTLIBRARIES mostlyclean-compile \
Makefile:300:		mostlyclean-libtool mostlyclean-tags mostlyclean-depend \
Makefile:301:		mostlyclean-generic
Makefile:303:mostlyclean: mostlyclean-am
Makefile:305:clean-am:  clean-noinstLTLIBRARIES clean-compile clean-libtool \
Makefile:306:		clean-tags clean-depend clean-generic mostlyclean-am
Makefile:308:clean: clean-am
Makefile:310:distclean-am:  distclean-noinstLTLIBRARIES distclean-compile \
Makefile:311:		distclean-libtool distclean-tags distclean-depend \
Makefile:312:		distclean-generic clean-am
Makefile:313:	-rm -f libtool
Makefile:315:distclean: distclean-am
Makefile:317:maintainer-clean-am:  maintainer-clean-noinstLTLIBRARIES \
Makefile:318:		maintainer-clean-compile maintainer-clean-libtool \
Makefile:319:		maintainer-clean-tags maintainer-clean-depend \
Makefile:320:		maintainer-clean-generic distclean-am
Makefile:324:maintainer-clean: maintainer-clean-am
Makefile:326:.PHONY: mostlyclean-noinstLTLIBRARIES distclean-noinstLTLIBRARIES \
Makefile:327:clean-noinstLTLIBRARIES maintainer-clean-noinstLTLIBRARIES \
Makefile:328:mostlyclean-compile distclean-compile clean-compile \
Makefile:329:maintainer-clean-compile mostlyclean-libtool distclean-libtool \
Makefile:330:clean-libtool maintainer-clean-libtool tags mostlyclean-tags \
Makefile:331:distclean-tags clean-tags maintainer-clean-tags distdir \
Makefile:332:mostlyclean-depend distclean-depend clean-depend \
Makefile:333:maintainer-clean-depend info-am info dvi-am dvi check check-am \
Makefile:334:installcheck-am installcheck install-exec-am install-exec \
Makefile:335:install-data-am install-data install-am install uninstall-am uninstall \
Makefile:336:all-redirect all-am all installdirs mostlyclean-generic \
Makefile:337:distclean-generic clean-generic maintainer-clean-generic clean \
Makefile:338:mostlyclean distclean maintainer-clean
Makefile.am:1:INCLUDES=-I${top_srcdir}
Makefile.in:1:# Makefile.in generated automatically by automake 1.4-p5 from Makefile.am
Makefile.in:3:# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
Makefile.in:89:INCLUDES = -I${top_srcdir}
Makefile.in:99:DEFS = @DEFS@ -I. -I$(srcdir) -I../../../akaxiso
Makefile.in:108:LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
Makefile.in:110:LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
Makefile.in:117:GZIP_ENV = --best
Makefile.in:122:all: all-redirect
Makefile.in:126:	cd $(top_srcdir) && $(AUTOMAKE) --gnu akaxiso/expat/lib/Makefile
Makefile.in:133:mostlyclean-noinstLTLIBRARIES:
Makefile.in:135:clean-noinstLTLIBRARIES:
Makefile.in:136:	-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
Makefile.in:138:distclean-noinstLTLIBRARIES:
Makefile.in:140:maintainer-clean-noinstLTLIBRARIES:
Makefile.in:145:	$(COMPILE) -c `cygpath -w $<`
Makefile.in:148:	$(COMPILE) -c $<
Makefile.in:151:	$(COMPILE) -c $<
Makefile.in:153:mostlyclean-compile:
Makefile.in:154:	-rm -f *.o core *.core
Makefile.in:155:	-rm -f *.$(OBJEXT)
Makefile.in:157:clean-compile:
Makefile.in:159:distclean-compile:
Makefile.in:160:	-rm -f *.tab.c
Makefile.in:162:maintainer-clean-compile:
Makefile.in:165:	$(LIBTOOL) --mode=compile $(COMPILE) -c $<
Makefile.in:168:	$(LIBTOOL) --mode=compile $(COMPILE) -c $<
Makefile.in:170:mostlyclean-libtool:
Makefile.in:171:	-rm -f *.lo
Makefile.in:173:clean-libtool:
Makefile.in:174:	-rm -rf .libs _libs
Makefile.in:176:distclean-libtool:
Makefile.in:178:maintainer-clean-libtool:
Makefile.in:191:	  && mkid -f$$here/ID $$unique $(LISP)
Makefile.in:200:	test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
Makefile.in:201:	  || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags  $$unique $(LISP) -o $$here/TAGS)
Makefile.in:203:mostlyclean-tags:
Makefile.in:205:clean-tags:
Makefile.in:207:distclean-tags:
Makefile.in:208:	-rm -f TAGS ID
Makefile.in:210:maintainer-clean-tags:
Makefile.in:212:distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
Makefile.in:221:	  && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu akaxiso/expat/lib/Makefile
Makefile.in:224:	  if test -d $$d/$$file; then \
Makefile.in:225:	    cp -pr $$d/$$file $(distdir)/$$file; \
Makefile.in:227:	    test -f $(distdir)/$$file \
Makefile.in:229:	    || cp -p $$d/$$file $(distdir)/$$file || :; \
Makefile.in:235:-include $(DEP_FILES)
Makefile.in:237:mostlyclean-depend:
Makefile.in:239:clean-depend:
Makefile.in:241:distclean-depend:
Makefile.in:242:	-rm -rf .deps
Makefile.in:244:maintainer-clean-depend:
Makefile.in:247:	@echo '$(COMPILE) -c $<'; \
Makefile.in:248:	$(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
Makefile.in:249:	@-cp .deps/$(*F).pp .deps/$(*F).P; \
Makefile.in:251:	  | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
Makefile.in:256:	@echo '$(LTCOMPILE) -c $<'; \
Makefile.in:257:	$(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
Makefile.in:258:	@-sed -e 's/^\([^:]*\)\.o[ 	]*:/\1.lo \1.o :/' \
Makefile.in:261:	  | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
Makefile.in:263:	rm -f .deps/$(*F).pp
Makefile.in:264:info-am:
Makefile.in:265:info: info-am
Makefile.in:266:dvi-am:
Makefile.in:267:dvi: dvi-am
Makefile.in:268:check-am: all-am
Makefile.in:269:check: check-am
Makefile.in:270:installcheck-am:
Makefile.in:271:installcheck: installcheck-am
Makefile.in:272:install-exec-am:
Makefile.in:273:install-exec: install-exec-am
Makefile.in:275:install-data-am:
Makefile.in:276:install-data: install-data-am
Makefile.in:278:install-am: all-am
Makefile.in:279:	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
Makefile.in:280:install: install-am
Makefile.in:281:uninstall-am:
Makefile.in:282:uninstall: uninstall-am
Makefile.in:283:all-am: Makefile $(LTLIBRARIES)
Makefile.in:284:all-redirect: all-am
Makefile.in:285:install-strip:
Makefile.in:286:	$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
Makefile.in:290:mostlyclean-generic:
Makefile.in:292:clean-generic:
Makefile.in:294:distclean-generic:
Makefile.in:295:	-rm -f Makefile $(CONFIG_CLEAN_FILES)
Makefile.in:296:	-rm -f config.cache config.log stamp-h stamp-h[0-9]*
Makefile.in:298:maintainer-clean-generic:
Makefile.in:299:mostlyclean-am:  mostlyclean-noinstLTLIBRARIES mostlyclean-compile \
Makefile.in:300:		mostlyclean-libtool mostlyclean-tags mostlyclean-depend \
Makefile.in:301:		mostlyclean-generic
Makefile.in:303:mostlyclean: mostlyclean-am
Makefile.in:305:clean-am:  clean-noinstLTLIBRARIES clean-compile clean-libtool \
Makefile.in:306:		clean-tags clean-depend clean-generic mostlyclean-am
Makefile.in:308:clean: clean-am
Makefile.in:310:distclean-am:  distclean-noinstLTLIBRARIES distclean-compile \
Makefile.in:311:		distclean-libtool distclean-tags distclean-depend \
Makefile.in:312:		distclean-generic clean-am
Makefile.in:313:	-rm -f libtool
Makefile.in:315:distclean: distclean-am
Makefile.in:317:maintainer-clean-am:  maintainer-clean-noinstLTLIBRARIES \
Makefile.in:318:		maintainer-clean-compile maintainer-clean-libtool \
Makefile.in:319:		maintainer-clean-tags maintainer-clean-depend \
Makefile.in:320:		maintainer-clean-generic distclean-am
Makefile.in:324:maintainer-clean: maintainer-clean-am
Makefile.in:326:.PHONY: mostlyclean-noinstLTLIBRARIES distclean-noinstLTLIBRARIES \
Makefile.in:327:clean-noinstLTLIBRARIES maintainer-clean-noinstLTLIBRARIES \
Makefile.in:328:mostlyclean-compile distclean-compile clean-compile \
Makefile.in:329:maintainer-clean-compile mostlyclean-libtool distclean-libtool \
Makefile.in:330:clean-libtool maintainer-clean-libtool tags mostlyclean-tags \
Makefile.in:331:distclean-tags clean-tags maintainer-clean-tags distdir \
Makefile.in:332:mostlyclean-depend distclean-depend clean-depend \
Makefile.in:333:maintainer-clean-depend info-am info dvi-am dvi check check-am \
Makefile.in:334:installcheck-am installcheck install-exec-am install-exec \
Makefile.in:335:install-data-am install-data install-am install uninstall-am uninstall \
Makefile.in:336:all-redirect all-am all installdirs mostlyclean-generic \
Makefile.in:337:distclean-generic clean-generic maintainer-clean-generic clean \
Makefile.in:338:mostlyclean distclean maintainer-clean
expat.h:43:#ifdef XML_UNICODE     /* Information is UTF-16 encoded. */
expat.h:51:#else                  /* Information is UTF-8 encoded. */
expat.h:176:   true and default is non-NULL, then this is a "#FIXED" default.
expat.h:193:   parameter will be -1, 0, or 1 indicating respectively that there
expat.h:236:   suite. If namespaceSeparator is non-NULL it creates a parser with
expat.h:248:/* Prepare a parser object to be re-used.  This is particularly
expat.h:252:   unknownEncodingHandler. The parser's external state is re-initialized
expat.h:293:   document except that they will be encoded in UTF-8 or UTF-16.
expat.h:320:   argument will be non-zero if the entity is a parameter entity, zero
expat.h:324:   be non-NULL and systemId, publicID, and notationName will be NULL.
expat.h:325:   The value string is NOT nul-terminated; the length is provided in
expat.h:326:   the value_length argument. Since it is legal to have zero-length
expat.h:330:   non-NULL. The publicId argument will be NULL unless a public
expat.h:332:   non-NULL value only for unparsed entity declarations.
expat.h:351:/* OBSOLETE -- OBSOLETE -- OBSOLETE
expat.h:465:   If map[b] is -1, then the byte sequence is malformed.
expat.h:467:   If map[b] is -n, where n >= 2, then b is the first byte of an
expat.h:468:   n-byte sequence that encodes a single Unicode scalar value.
expat.h:474:   point to a n-byte sequence where map[(unsigned char)*s] == -n.  The
expat.h:476:   by this byte sequence or -1 if the byte sequence is malformed.
expat.h:478:   The convert function may be NULL if the encoding is a single-byte
expat.h:479:   encoding, that is if map[b] >= -1 for all bytes b.
expat.h:489:   1. Every ASCII character that can appear in a well-formed XML document,
expat.h:501:      UTF-16 are  not allowed).  Note that this restriction doesn't
expat.h:502:      apply to the built-in support for UTF-8 and UTF-16.
expat.h:626:/* If a non-NULL value for arg is specified here, then it will be
expat.h:649:/* If do_nst is non-zero, and namespace processing is in effect, and
expat.h:674:   XML_ParserCreate. On success XML_SetEncoding returns non-zero,
expat.h:723:   to the XML_StartElementHandler that were specified in the start-tag
expat.h:732:   XML_StartElementHandler, or -1 if there is no ID attribute.  Each
expat.h:753:   entity; context is a '\0'-terminated string specifying the parse
expat.h:754:   context; encoding is a '\0'-terminated string giving the name of
expat.h:798:   entities is requested; otherwise it will return non-zero.
internal.h:9:   FASTCALL    - Used for those internal functions that have a simple
internal.h:12:   PTRCALL     - Used for functions called though function pointers.
internal.h:14:   PTRFASTCALL - Like PTRCALL, but for low number of arguments.
internal.h:16:   inline      - Used for selected internal functions for which inlining
libexpat_lib.la:1:# libexpat_lib.la - a libtool library file
libexpat_lib.la:2:# Generated by ltmain.sh - GNU libtool 1.4.3 (1.922.2.111 2002/10/23 02:54:36)
xmlparse.c:42:#define MUST_CONVERT(enc, s) (!(enc)->isUtf16 || (((unsigned long)s) & 1))
xmlparse.c:50:#define MUST_CONVERT(enc, s) (!(enc)->isUtf8)
xmlparse.c:83:#define ROUND_UP(n, sz) (((n) + ((sz) - 1)) & ~((sz) - 1))
xmlparse.c:151:   encodings.  The memory buffer 'buf' is a separately-allocated
xmlparse.c:156:   XML_Parse()/XML_ParseBuffer(), the buffer is re-allocated to
xmlparse.c:159:   A parser re-uses these structures, maintaining a list of allocated
xmlparse.c:411:#define poolStart(pool) ((pool)->start)
xmlparse.c:412:#define poolEnd(pool) ((pool)->ptr)
xmlparse.c:413:#define poolLength(pool) ((pool)->ptr - (pool)->start)
xmlparse.c:414:#define poolChop(pool) ((void)--(pool->ptr))
xmlparse.c:415:#define poolLastChar(pool) (((pool)->ptr)[-1])
xmlparse.c:416:#define poolDiscard(pool) ((pool)->ptr = (pool)->start)
xmlparse.c:417:#define poolFinish(pool) ((pool)->start = (pool)->ptr)
xmlparse.c:419:  (((pool)->ptr == (pool)->end && !poolGrow(pool)) \
xmlparse.c:421:   : ((*((pool)->ptr)++ = c), 1))
xmlparse.c:517:#define MALLOC(s) (parser->m_mem.malloc_fcn((s)))
xmlparse.c:518:#define REALLOC(p,s) (parser->m_mem.realloc_fcn((p),(s)))
xmlparse.c:519:#define FREE(p) (parser->m_mem.free_fcn((p)))
xmlparse.c:521:#define userData (parser->m_userData)
xmlparse.c:522:#define handlerArg (parser->m_handlerArg)
xmlparse.c:523:#define startElementHandler (parser->m_startElementHandler)
xmlparse.c:524:#define endElementHandler (parser->m_endElementHandler)
xmlparse.c:525:#define characterDataHandler (parser->m_characterDataHandler)
xmlparse.c:527:        (parser->m_processingInstructionHandler)
xmlparse.c:528:#define commentHandler (parser->m_commentHandler)
xmlparse.c:530:        (parser->m_startCdataSectionHandler)
xmlparse.c:531:#define endCdataSectionHandler (parser->m_endCdataSectionHandler)
xmlparse.c:532:#define defaultHandler (parser->m_defaultHandler)
xmlparse.c:533:#define startDoctypeDeclHandler (parser->m_startDoctypeDeclHandler)
xmlparse.c:534:#define endDoctypeDeclHandler (parser->m_endDoctypeDeclHandler)
xmlparse.c:536:        (parser->m_unparsedEntityDeclHandler)
xmlparse.c:537:#define notationDeclHandler (parser->m_notationDeclHandler)
xmlparse.c:539:        (parser->m_startNamespaceDeclHandler)
xmlparse.c:540:#define endNamespaceDeclHandler (parser->m_endNamespaceDeclHandler)
xmlparse.c:541:#define notStandaloneHandler (parser->m_notStandaloneHandler)
xmlparse.c:543:        (parser->m_externalEntityRefHandler)
xmlparse.c:545:        (parser->m_externalEntityRefHandlerArg)
xmlparse.c:547:        (parser->m_internalEntityRefHandler)
xmlparse.c:548:#define skippedEntityHandler (parser->m_skippedEntityHandler)
xmlparse.c:549:#define unknownEncodingHandler (parser->m_unknownEncodingHandler)
xmlparse.c:550:#define elementDeclHandler (parser->m_elementDeclHandler)
xmlparse.c:551:#define attlistDeclHandler (parser->m_attlistDeclHandler)
xmlparse.c:552:#define entityDeclHandler (parser->m_entityDeclHandler)
xmlparse.c:553:#define xmlDeclHandler (parser->m_xmlDeclHandler)
xmlparse.c:554:#define encoding (parser->m_encoding)
xmlparse.c:555:#define initEncoding (parser->m_initEncoding)
xmlparse.c:556:#define internalEncoding (parser->m_internalEncoding)
xmlparse.c:557:#define unknownEncodingMem (parser->m_unknownEncodingMem)
xmlparse.c:558:#define unknownEncodingData (parser->m_unknownEncodingData)
xmlparse.c:560:  (parser->m_unknownEncodingHandlerData)
xmlparse.c:561:#define unknownEncodingRelease (parser->m_unknownEncodingRelease)
xmlparse.c:562:#define protocolEncodingName (parser->m_protocolEncodingName)
xmlparse.c:563:#define ns (parser->m_ns)
xmlparse.c:564:#define ns_triplets (parser->m_ns_triplets)
xmlparse.c:565:#define prologState (parser->m_prologState)
xmlparse.c:566:#define processor (parser->m_processor)
xmlparse.c:567:#define errorCode (parser->m_errorCode)
xmlparse.c:568:#define eventPtr (parser->m_eventPtr)
xmlparse.c:569:#define eventEndPtr (parser->m_eventEndPtr)
xmlparse.c:570:#define positionPtr (parser->m_positionPtr)
xmlparse.c:571:#define position (parser->m_position)
xmlparse.c:572:#define openInternalEntities (parser->m_openInternalEntities)
xmlparse.c:574:        (parser->m_defaultExpandInternalEntities)
xmlparse.c:575:#define tagLevel (parser->m_tagLevel)
xmlparse.c:576:#define buffer (parser->m_buffer)
xmlparse.c:577:#define bufferPtr (parser->m_bufferPtr)
xmlparse.c:578:#define bufferEnd (parser->m_bufferEnd)
xmlparse.c:579:#define parseEndByteIndex (parser->m_parseEndByteIndex)
xmlparse.c:580:#define parseEndPtr (parser->m_parseEndPtr)
xmlparse.c:581:#define bufferLim (parser->m_bufferLim)
xmlparse.c:582:#define dataBuf (parser->m_dataBuf)
xmlparse.c:583:#define dataBufEnd (parser->m_dataBufEnd)
xmlparse.c:584:#define _dtd (parser->m_dtd)
xmlparse.c:585:#define curBase (parser->m_curBase)
xmlparse.c:586:#define declEntity (parser->m_declEntity)
xmlparse.c:587:#define doctypeName (parser->m_doctypeName)
xmlparse.c:588:#define doctypeSysid (parser->m_doctypeSysid)
xmlparse.c:589:#define doctypePubid (parser->m_doctypePubid)
xmlparse.c:590:#define declAttributeType (parser->m_declAttributeType)
xmlparse.c:591:#define declNotationName (parser->m_declNotationName)
xmlparse.c:592:#define declNotationPublicId (parser->m_declNotationPublicId)
xmlparse.c:593:#define declElementType (parser->m_declElementType)
xmlparse.c:594:#define declAttributeId (parser->m_declAttributeId)
xmlparse.c:595:#define declAttributeIsCdata (parser->m_declAttributeIsCdata)
xmlparse.c:596:#define declAttributeIsId (parser->m_declAttributeIsId)
xmlparse.c:597:#define freeTagList (parser->m_freeTagList)
xmlparse.c:598:#define freeBindingList (parser->m_freeBindingList)
xmlparse.c:599:#define inheritedBindings (parser->m_inheritedBindings)
xmlparse.c:600:#define tagStack (parser->m_tagStack)
xmlparse.c:601:#define atts (parser->m_atts)
xmlparse.c:602:#define attsSize (parser->m_attsSize)
xmlparse.c:603:#define nSpecifiedAtts (parser->m_nSpecifiedAtts)
xmlparse.c:604:#define idAttIndex (parser->m_idAttIndex)
xmlparse.c:605:#define tempPool (parser->m_tempPool)
xmlparse.c:606:#define temp2Pool (parser->m_temp2Pool)
xmlparse.c:607:#define groupConnector (parser->m_groupConnector)
xmlparse.c:608:#define groupSize (parser->m_groupSize)
xmlparse.c:609:#define namespaceSeparator (parser->m_namespaceSeparator)
xmlparse.c:610:#define parentParser (parser->m_parentParser)
xmlparse.c:612:#define isParamEntity (parser->m_isParamEntity)
xmlparse.c:613:#define useForeignDTD (parser->m_useForeignDTD)
xmlparse.c:614:#define paramEntityParsing (parser->m_paramEntityParsing)
xmlparse.c:678:      memsuite->malloc_fcn(sizeof(struct XML_ParserStruct));
xmlparse.c:680:      mtemp = (XML_Memory_Handling_Suite *)&(parser->m_mem);
xmlparse.c:681:      mtemp->malloc_fcn = memsuite->malloc_fcn;
xmlparse.c:682:      mtemp->realloc_fcn = memsuite->realloc_fcn;
xmlparse.c:683:      mtemp->free_fcn = memsuite->free_fcn;
xmlparse.c:690:      mtemp = (XML_Memory_Handling_Suite *)&(parser->m_mem);
xmlparse.c:691:      mtemp->malloc_fcn = malloc;
xmlparse.c:692:      mtemp->realloc_fcn = realloc;
xmlparse.c:693:      mtemp->free_fcn = free;
xmlparse.c:720:    _dtd = dtdCreate(&parser->m_mem);
xmlparse.c:742:  poolInit(&tempPool, &(parser->m_mem));
xmlparse.c:743:  poolInit(&temp2Pool, &(parser->m_mem));
xmlparse.c:840:    bindings = bindings->nextTagBinding;
xmlparse.c:841:    b->nextTagBinding = freeBindingList;
xmlparse.c:856:    tStk = tStk->parent;
xmlparse.c:857:    tag->parent = freeTagList;
xmlparse.c:858:    moveToFreeBindingList(parser, tag->bindings);
xmlparse.c:859:    tag->bindings = NULL;
xmlparse.c:870:  dtdReset(_dtd, &parser->m_mem);
xmlparse.c:946:  /* Note that the magical uses of the pre-processor to make field
xmlparse.c:954:    parser = parserCreate(encodingName, &parser->m_mem, tmp, newDtd);
xmlparse.c:957:    parser = parserCreate(encodingName, &parser->m_mem, NULL, newDtd);
xmlparse.c:999:    if (!dtdCopy(_dtd, oldDtd, &parser->m_mem)
xmlparse.c:1011:       because this would overwrite existing prefix->binding pointers in
xmlparse.c:1030:    bindings = b->nextTagBinding;
xmlparse.c:1031:    FREE(b->uri);
xmlparse.c:1048:    tagStack = tagStack->parent;
xmlparse.c:1049:    FREE(p->buf);
xmlparse.c:1050:    destroyBindings(p->bindings, parser);
xmlparse.c:1059:     parser->m_dtd with the root parser, so we must not destroy it
xmlparse.c:1065:    dtdDestroy(_dtd, (XML_Bool)!parentParser, &parser->m_mem);
xmlparse.c:1121:    p = poolCopyString(&_dtd->pool, p);
xmlparse.c:1401:    nLeftOver = s + len - end;
xmlparse.c:1403:      if (buffer == NULL || nLeftOver > bufferLim - buffer) {
xmlparse.c:1466:  if (len > bufferLim - bufferEnd) {
xmlparse.c:1468:    int neededSize = len + (bufferEnd - bufferPtr);
xmlparse.c:1470:    int keep = bufferPtr - buffer;
xmlparse.c:1476:    if (neededSize  <= bufferLim - buffer) {
xmlparse.c:1478:      if (keep < bufferPtr - buffer) {
xmlparse.c:1479:        int offset = (bufferPtr - buffer) - keep;
xmlparse.c:1480:        memmove(buffer, &buffer[offset], bufferEnd - bufferPtr + keep);
xmlparse.c:1481:        bufferEnd -= offset;
xmlparse.c:1482:        bufferPtr -= offset;
xmlparse.c:1485:      memmove(buffer, bufferPtr, bufferEnd - bufferPtr);
xmlparse.c:1486:      bufferEnd = buffer + (bufferEnd - bufferPtr);
xmlparse.c:1492:      int bufferSize = bufferLim - bufferPtr;
xmlparse.c:1506:        int keep = bufferPtr - buffer;
xmlparse.c:1509:        memcpy(newBuf, &bufferPtr[-keep], bufferEnd - bufferPtr + keep);
xmlparse.c:1512:        bufferEnd = buffer + (bufferEnd - bufferPtr) + keep;
xmlparse.c:1516:        bufferEnd = newBuf + (bufferEnd - bufferPtr);
xmlparse.c:1521:        memcpy(newBuf, bufferPtr, bufferEnd - bufferPtr);
xmlparse.c:1524:      bufferEnd = newBuf + (bufferEnd - bufferPtr);
xmlparse.c:1542:    return parseEndByteIndex - (parseEndPtr - eventPtr);
xmlparse.c:1543:  return -1;
xmlparse.c:1550:    return eventEndPtr - eventPtr;
xmlparse.c:1559:    *offset = eventPtr - buffer;
xmlparse.c:1560:    *size   = bufferEnd - buffer;
xmlparse.c:1618:                    openInternalEntities->internalEventPtr,
xmlparse.c:1619:                    openInternalEntities->internalEventEndPtr);
xmlparse.c:1633:    XML_L("not well-formed (invalid token)"),
xmlparse.c:1652:    XML_L("unexpected parser state - please send a bug report"),
xmlparse.c:1665:  /* V1 is used to string-ize the version number. However, it would
xmlparse.c:1666:     string-ize the actual version macro *names* unless we get them
xmlparse.c:1724:/* Initially tag->rawName always points into the parse buffer;
xmlparse.c:1726:   processed, and not yet closed, we need to store tag->rawName in a more
xmlparse.c:1735:    int nameLen = sizeof(XML_Char) * (tag->name.strLen + 1);
xmlparse.c:1736:    char *rawNameBuf = tag->buf + nameLen;
xmlparse.c:1742:    if (tag->rawName == rawNameBuf)
xmlparse.c:1744:    /* For re-use purposes we need to ensure that the
xmlparse.c:1745:       size of tag->buf is a multiple of sizeof(XML_Char).
xmlparse.c:1747:    bufSize = nameLen + ROUND_UP(tag->rawNameLength, sizeof(XML_Char));
xmlparse.c:1748:    if (bufSize > tag->bufEnd - tag->buf) {
xmlparse.c:1749:      char *temp = (char *)REALLOC(tag->buf, bufSize);
xmlparse.c:1752:      /* if tag->name.str points to tag->buf (only when namespace
xmlparse.c:1755:      if (tag->name.str == (XML_Char *)tag->buf)
xmlparse.c:1756:        tag->name.str = (XML_Char *)temp;
xmlparse.c:1757:      /* if tag->name.localPart is set (when namespace processing is on)
xmlparse.c:1758:         then update it as well, since it will always point into tag->buf
xmlparse.c:1760:      if (tag->name.localPart)
xmlparse.c:1761:        tag->name.localPart = (XML_Char *)temp + (tag->name.localPart -
xmlparse.c:1762:                                                  (XML_Char *)tag->buf);
xmlparse.c:1763:      tag->buf = temp;
xmlparse.c:1764:      tag->bufEnd = temp + bufSize;
xmlparse.c:1767:    memcpy(rawNameBuf, tag->rawName, tag->rawNameLength);
xmlparse.c:1768:    tag->rawName = rawNameBuf;
xmlparse.c:1769:    tag = tag->parent;
xmlparse.c:1815:       declaration - causing the error XML_ERROR_MISPLACED_XML_PI in doContent.
xmlparse.c:1910:    eventPP = &(openInternalEntities->internalEventPtr);
xmlparse.c:1911:    eventEndPP = &(openInternalEntities->internalEventEndPtr);
xmlparse.c:1967:                                              s + enc->minBytesPerChar,
xmlparse.c:1968:                                              next - enc->minBytesPerChar);
xmlparse.c:1976:        name = poolStoreString(&dtd->pool, enc,
xmlparse.c:1977:                                s + enc->minBytesPerChar,
xmlparse.c:1978:                                next - enc->minBytesPerChar);
xmlparse.c:1981:        entity = (ENTITY *)lookup(&dtd->generalEntities, name, 0);
xmlparse.c:1982:        poolDiscard(&dtd->pool);
xmlparse.c:1987:        if (!dtd->hasParamEntityRefs || dtd->standalone) {
xmlparse.c:1990:          else if (!entity->is_internal)
xmlparse.c:2000:        if (entity->open)
xmlparse.c:2002:        if (entity->notation)
xmlparse.c:2004:        if (entity->textPtr) {
xmlparse.c:2009:              skippedEntityHandler(handlerArg, entity->name, 0);
xmlparse.c:2014:          entity->open = XML_TRUE;
xmlparse.c:2023:                             (char *)entity->textPtr,
xmlparse.c:2024:                             (char *)(entity->textPtr + entity->textLen),
xmlparse.c:2026:          entity->open = XML_FALSE;
xmlparse.c:2033:          entity->open = XML_TRUE;
xmlparse.c:2035:          entity->open = XML_FALSE;
xmlparse.c:2040:                                        entity->base,
xmlparse.c:2041:                                        entity->systemId,
xmlparse.c:2042:                                        entity->publicId))
xmlparse.c:2059:          freeTagList = freeTagList->parent;
xmlparse.c:2065:          tag->buf = (char *)MALLOC(INIT_TAG_BUF_SIZE);
xmlparse.c:2066:          if (!tag->buf) {
xmlparse.c:2070:          tag->bufEnd = tag->buf + INIT_TAG_BUF_SIZE;
xmlparse.c:2072:        tag->bindings = NULL;
xmlparse.c:2073:        tag->parent = tagStack;
xmlparse.c:2075:        tag->name.localPart = NULL;
xmlparse.c:2076:        tag->name.prefix = NULL;
xmlparse.c:2077:        tag->rawName = s + enc->minBytesPerChar;
xmlparse.c:2078:        tag->rawNameLength = XmlNameLength(enc, tag->rawName);
xmlparse.c:2081:          const char *rawNameEnd = tag->rawName + tag->rawNameLength;
xmlparse.c:2082:          const char *fromPtr = tag->rawName;
xmlparse.c:2083:          toPtr = (XML_Char *)tag->buf;
xmlparse.c:2089:                       (ICHAR **)&toPtr, (ICHAR *)tag->bufEnd - 1);
xmlparse.c:2090:            convLen = toPtr - (XML_Char *)tag->buf;
xmlparse.c:2092:              tag->name.strLen = convLen;
xmlparse.c:2095:            bufSize = (tag->bufEnd - tag->buf) << 1;
xmlparse.c:2097:              char *temp = (char *)REALLOC(tag->buf, bufSize);
xmlparse.c:2100:              tag->buf = temp;
xmlparse.c:2101:              tag->bufEnd = temp + bufSize;
xmlparse.c:2106:        tag->name.str = (XML_Char *)tag->buf;
xmlparse.c:2108:        result = storeAtts(parser, enc, s, &(tag->name), &(tag->bindings));
xmlparse.c:2112:          startElementHandler(handlerArg, tag->name.str,
xmlparse.c:2123:        const char *rawName = s + enc->minBytesPerChar;
xmlparse.c:2153:            endNamespaceDeclHandler(handlerArg, b->prefix->name);
xmlparse.c:2154:          bindings = bindings->nextTagBinding;
xmlparse.c:2155:          b->nextTagBinding = freeBindingList;
xmlparse.c:2157:          b->prefix->binding = b->prevPrefixBinding;
xmlparse.c:2170:        tagStack = tag->parent;
xmlparse.c:2171:        tag->parent = freeTagList;
xmlparse.c:2173:        rawName = s + enc->minBytesPerChar*2;
xmlparse.c:2175:        if (len != tag->rawNameLength
xmlparse.c:2176:            || memcmp(tag->rawName, rawName, len) != 0) {
xmlparse.c:2180:        --tagLevel;
xmlparse.c:2185:          localPart = tag->name.localPart;
xmlparse.c:2188:               tag->name.str, since this points to the binding->uri
xmlparse.c:2189:               buffer which gets re-used; so we have to add them again
xmlparse.c:2191:            uri = (XML_Char *)tag->name.str + tag->name.uriLen;
xmlparse.c:2192:            /* don't need to check for space - already done in storeAtts() */
xmlparse.c:2194:            prefix = (XML_Char *)tag->name.prefix;
xmlparse.c:2201:          endElementHandler(handlerArg, tag->name.str);
xmlparse.c:2205:        while (tag->bindings) {
xmlparse.c:2206:          BINDING *b = tag->bindings;
xmlparse.c:2208:            endNamespaceDeclHandler(handlerArg, b->prefix->name);
xmlparse.c:2209:          tag->bindings = tag->bindings->nextTagBinding;
xmlparse.c:2210:          b->nextTagBinding = freeBindingList;
xmlparse.c:2212:          b->prefix->binding = b->prevPrefixBinding;
xmlparse.c:2281:                               dataPtr - (ICHAR *)dataBuf);
xmlparse.c:2286:                               (XML_Char *)end - (XML_Char *)s);
xmlparse.c:2307:                                 dataPtr - (ICHAR *)dataBuf);
xmlparse.c:2316:                               (XML_Char *)next - (XML_Char *)s);
xmlparse.c:2339:/* Precondition: all arguments must be non-NULL;
xmlparse.c:2341:   - normalize attributes
xmlparse.c:2342:   - check attributes for well-formedness
xmlparse.c:2343:   - generate namespace aware attribute names (URI, prefix)
xmlparse.c:2344:   - build list of attributes for startElementHandler
xmlparse.c:2345:   - default attributes
xmlparse.c:2346:   - process namespace declarations (check and report them)
xmlparse.c:2347:   - generate namespace aware element name (URI, prefix)
xmlparse.c:2368:  elementType = (ELEMENT_TYPE *)lookup(&dtd->elementTypes, tagNamePtr->str,0);
xmlparse.c:2370:    const XML_Char *name = poolCopyString(&dtd->pool, tagNamePtr->str);
xmlparse.c:2373:    elementType = (ELEMENT_TYPE *)lookup(&dtd->elementTypes, name,
xmlparse.c:2380:  nDefaultAtts = elementType->nDefaultAtts;
xmlparse.c:2405:    if ((attId->name)[-1]) {
xmlparse.c:2410:    (attId->name)[-1] = 1;
xmlparse.c:2411:    appAtts[attIndex++] = attId->name;
xmlparse.c:2417:      if (attId->maybeTokenized) {
xmlparse.c:2420:          if (attId == elementType->defaultAtts[j].id) {
xmlparse.c:2421:            isCdata = elementType->defaultAtts[j].isCdata;
xmlparse.c:2445:    if (attId->prefix) {
xmlparse.c:2446:      if (attId->xmlns) {
xmlparse.c:2448:        enum XML_Error result = addBinding(parser, attId->prefix, attId,
xmlparse.c:2452:        --attIndex;
xmlparse.c:2458:        (attId->name)[-1] = 2;
xmlparse.c:2465:  /* set-up for XML_GetSpecifiedAttributeCount and XML_GetIdAttributeIndex */
xmlparse.c:2467:  if (elementType->idAtt && (elementType->idAtt->name)[-1]) {
xmlparse.c:2469:      if (appAtts[i] == elementType->idAtt->name) {
xmlparse.c:2475:    idAttIndex = -1;
xmlparse.c:2479:    const DEFAULT_ATTRIBUTE *da = elementType->defaultAtts + i;
xmlparse.c:2480:    if (!(da->id->name)[-1] && da->value) {
xmlparse.c:2481:      if (da->id->prefix) {
xmlparse.c:2482:        if (da->id->xmlns) {
xmlparse.c:2483:          enum XML_Error result = addBinding(parser, da->id->prefix, da->id,
xmlparse.c:2484:                                             da->value, bindingsPtr);
xmlparse.c:2489:          (da->id->name)[-1] = 2;
xmlparse.c:2491:          appAtts[attIndex++] = da->id->name;
xmlparse.c:2492:          appAtts[attIndex++] = da->value;
xmlparse.c:2496:        (da->id->name)[-1] = 1;
xmlparse.c:2497:        appAtts[attIndex++] = da->id->name;
xmlparse.c:2498:        appAtts[attIndex++] = da->value;
xmlparse.c:2508:      if (appAtts[i][-1] == 2) {
xmlparse.c:2510:        ((XML_Char *)(appAtts[i]))[-1] = 0;
xmlparse.c:2511:        id = (ATTRIBUTE_ID *)lookup(&dtd->attributeIds, appAtts[i], 0);
xmlparse.c:2512:        if (id->prefix->binding) {
xmlparse.c:2514:          const BINDING *b = id->prefix->binding;
xmlparse.c:2516:          for (j = 0; j < b->uriLen; j++) {
xmlparse.c:2517:            if (!poolAppendChar(&tempPool, b->uri[j]))
xmlparse.c:2527:            tempPool.ptr[-1] = namespaceSeparator;
xmlparse.c:2528:            s = b->prefix->name;
xmlparse.c:2538:        if (!--nPrefixes)
xmlparse.c:2542:        ((XML_Char *)(appAtts[i]))[-1] = 0;
xmlparse.c:2547:    ((XML_Char *)(appAtts[i]))[-1] = 0;
xmlparse.c:2548:  for (binding = *bindingsPtr; binding; binding = binding->nextTagBinding)
xmlparse.c:2549:    binding->attId->name[-1] = 0;
xmlparse.c:2552:  if (elementType->prefix) {
xmlparse.c:2553:    binding = elementType->prefix->binding;
xmlparse.c:2556:    localPart = tagNamePtr->str;
xmlparse.c:2560:  else if (dtd->defaultPrefix.binding) {
xmlparse.c:2561:    binding = dtd->defaultPrefix.binding;
xmlparse.c:2562:    localPart = tagNamePtr->str;
xmlparse.c:2567:  if (ns && ns_triplets && binding->prefix->name) {
xmlparse.c:2568:    for (; binding->prefix->name[prefixLen++];)
xmlparse.c:2571:  tagNamePtr->localPart = localPart;
xmlparse.c:2572:  tagNamePtr->uriLen = binding->uriLen;
xmlparse.c:2573:  tagNamePtr->prefix = binding->prefix->name;
xmlparse.c:2574:  tagNamePtr->prefixLen = prefixLen;
xmlparse.c:2577:  n = i + binding->uriLen + prefixLen;
xmlparse.c:2578:  if (n > binding->uriAlloc) {
xmlparse.c:2583:    binding->uriAlloc = n + EXPAND_SPARE;
xmlparse.c:2584:    memcpy(uri, binding->uri, binding->uriLen * sizeof(XML_Char));
xmlparse.c:2585:    for (p = tagStack; p; p = p->parent)
xmlparse.c:2586:      if (p->name.str == binding->uri)
xmlparse.c:2587:        p->name.str = uri;
xmlparse.c:2588:    FREE(binding->uri);
xmlparse.c:2589:    binding->uri = uri;
xmlparse.c:2591:  uri = binding->uri + binding->uriLen;
xmlparse.c:2594:        uri = uri + (i - 1);
xmlparse.c:2596:    memcpy(uri + 1, binding->prefix->name, prefixLen * sizeof(XML_Char));
xmlparse.c:2598:  tagNamePtr->str = binding->uri;
xmlparse.c:2602:/* addBinding() overwrites the value of prefix->binding without checking.
xmlparse.c:2613:  if (*uri == XML_T('\0') && prefix->name)
xmlparse.c:2622:    if (len > b->uriAlloc) {
xmlparse.c:2623:      XML_Char *temp = (XML_Char *)REALLOC(b->uri,
xmlparse.c:2627:      b->uri = temp;
xmlparse.c:2628:      b->uriAlloc = len + EXPAND_SPARE;
xmlparse.c:2630:    freeBindingList = b->nextTagBinding;
xmlparse.c:2636:    b->uri = (XML_Char *)MALLOC(sizeof(XML_Char) * (len + EXPAND_SPARE));
xmlparse.c:2637:    if (!b->uri) {
xmlparse.c:2641:    b->uriAlloc = len + EXPAND_SPARE;
xmlparse.c:2643:  b->uriLen = len;
xmlparse.c:2644:  memcpy(b->uri, uri, len * sizeof(XML_Char));
xmlparse.c:2646:    b->uri[len - 1] = namespaceSeparator;
xmlparse.c:2647:  b->prefix = prefix;
xmlparse.c:2648:  b->attId = attId;
xmlparse.c:2649:  b->prevPrefixBinding = prefix->binding;
xmlparse.c:2650:  if (*uri == XML_T('\0') && prefix == &_dtd->defaultPrefix)
xmlparse.c:2651:    prefix->binding = NULL;
xmlparse.c:2653:    prefix->binding = b;
xmlparse.c:2654:  b->nextTagBinding = *bindingsPtr;
xmlparse.c:2657:    startNamespaceDeclHandler(handlerArg, prefix->name,
xmlparse.c:2658:                              prefix->binding ? uri : 0);
xmlparse.c:2686:/* startPtr gets set to non-null is the section is closed, and to null if
xmlparse.c:2705:    eventPP = &(openInternalEntities->internalEventPtr);
xmlparse.c:2706:    eventEndPP = &(openInternalEntities->internalEventEndPtr);
xmlparse.c:2743:                                 dataPtr - (ICHAR *)dataBuf);
xmlparse.c:2752:                               (XML_Char *)next - (XML_Char *)s);
xmlparse.c:2802:/* startPtr gets set to non-null is the section is closed, and to null
xmlparse.c:2823:    eventPP = &(openInternalEntities->internalEventPtr);
xmlparse.c:2824:    eventEndPP = &(openInternalEntities->internalEventEndPtr);
xmlparse.c:2872:      if (i == sizeof(encodingBuf) - 1
xmlparse.c:2900:  int standalone = -1;
xmlparse.c:2915:    _dtd->standalone = XML_TRUE;
xmlparse.c:2936:                                      versionend - encoding->minBytesPerChar);
xmlparse.c:2946:      if (newEncoding->minBytesPerChar != encoding->minBytesPerChar) {
xmlparse.c:2982:      info.map[i] = -1;
xmlparse.c:3041:  _dtd->paramEntityRead = XML_TRUE;
xmlparse.c:3088:      /* stop scanning for text declaration - we found one */
xmlparse.c:3094:       function to exit with *nextPtr set to s - that is what we want for other
xmlparse.c:3095:       tokens, but not for the BOM - we would rather like to skip it;
xmlparse.c:3235:    eventPP = &(openInternalEntities->internalEventPtr);
xmlparse.c:3236:    eventEndPP = &(openInternalEntities->internalEventEndPtr);
xmlparse.c:3269:        tok = -tok;
xmlparse.c:3320:      dtd->hasParamEntityRefs = XML_TRUE;
xmlparse.c:3323:                                       s + enc->minBytesPerChar,
xmlparse.c:3324:                                       next - enc->minBytesPerChar);
xmlparse.c:3331:      declEntity = (ENTITY *)lookup(&dtd->paramEntities,
xmlparse.c:3341:      if (dtd->keepProcessing && declEntity) {
xmlparse.c:3342:        XML_Char *tem = poolStoreString(&dtd->pool,
xmlparse.c:3344:                                        s + enc->minBytesPerChar,
xmlparse.c:3345:                                        next - enc->minBytesPerChar);
xmlparse.c:3349:        declEntity->publicId = tem;
xmlparse.c:3350:        poolFinish(&dtd->pool);
xmlparse.c:3362:      /* doctypeSysid will be non-NULL in the case of a previous
xmlparse.c:3368:        dtd->hasParamEntityRefs = XML_TRUE; /* when docTypeSysid == NULL */
xmlparse.c:3370:          ENTITY *entity = (ENTITY *)lookup(&dtd->paramEntities,
xmlparse.c:3376:            entity->base = curBase;
xmlparse.c:3377:          dtd->paramEntityRead = XML_FALSE;
xmlparse.c:3380:                                        entity->base,
xmlparse.c:3381:                                        entity->systemId,
xmlparse.c:3382:                                        entity->publicId))
xmlparse.c:3384:          if (dtd->paramEntityRead &&
xmlparse.c:3385:              !dtd->standalone &&
xmlparse.c:3389:          /* end of DTD - no need to update dtd->keepProcessing */
xmlparse.c:3405:        dtd->hasParamEntityRefs = XML_TRUE;
xmlparse.c:3407:          ENTITY *entity = (ENTITY *)lookup(&dtd->paramEntities,
xmlparse.c:3412:          entity->base = curBase;
xmlparse.c:3413:          dtd->paramEntityRead = XML_FALSE;
xmlparse.c:3416:                                        entity->base,
xmlparse.c:3417:                                        entity->systemId,
xmlparse.c:3418:                                        entity->publicId))
xmlparse.c:3420:          if (dtd->paramEntityRead &&
xmlparse.c:3421:              !dtd->standalone &&
xmlparse.c:3425:          /* end of DTD - no need to update dtd->keepProcessing */
xmlparse.c:3470:      if (dtd->keepProcessing && attlistDeclHandler)
xmlparse.c:3475:      if (dtd->keepProcessing && attlistDeclHandler) {
xmlparse.c:3495:      if (dtd->keepProcessing) {
xmlparse.c:3512:          attlistDeclHandler(handlerArg, declElementType->name,
xmlparse.c:3513:                             declAttributeId->name, declAttributeType,
xmlparse.c:3522:      if (dtd->keepProcessing) {
xmlparse.c:3526:                                s + enc->minBytesPerChar,
xmlparse.c:3527:                                next - enc->minBytesPerChar,
xmlparse.c:3528:                                &dtd->pool);
xmlparse.c:3531:        attVal = poolStart(&dtd->pool);
xmlparse.c:3532:        poolFinish(&dtd->pool);
xmlparse.c:3549:          attlistDeclHandler(handlerArg, declElementType->name,
xmlparse.c:3550:                             declAttributeId->name, declAttributeType,
xmlparse.c:3559:      if (dtd->keepProcessing) {
xmlparse.c:3561:                                            s + enc->minBytesPerChar,
xmlparse.c:3562:                                            next - enc->minBytesPerChar);
xmlparse.c:3564:          declEntity->textPtr = poolStart(&dtd->entityValuePool);
xmlparse.c:3565:          declEntity->textLen = poolLength(&dtd->entityValuePool);
xmlparse.c:3566:          poolFinish(&dtd->entityValuePool);
xmlparse.c:3570:                              declEntity->name,
xmlparse.c:3571:                              declEntity->is_param,
xmlparse.c:3572:                              declEntity->textPtr,
xmlparse.c:3573:                              declEntity->textLen,
xmlparse.c:3579:          poolDiscard(&dtd->entityValuePool);
xmlparse.c:3588:      dtd->hasParamEntityRefs = XML_TRUE;
xmlparse.c:3591:                                       s + enc->minBytesPerChar,
xmlparse.c:3592:                                       next - enc->minBytesPerChar);
xmlparse.c:3600:        /* use externalSubsetName to make doctypeSysid non-NULL
xmlparse.c:3604:      if (!dtd->standalone
xmlparse.c:3615:        declEntity = (ENTITY *)lookup(&dtd->paramEntities,
xmlparse.c:3620:        declEntity->publicId = NULL;
xmlparse.c:3625:      if (dtd->keepProcessing && declEntity) {
xmlparse.c:3626:        declEntity->systemId = poolStoreString(&dtd->pool, enc,
xmlparse.c:3627:                                               s + enc->minBytesPerChar,
xmlparse.c:3628:                                               next - enc->minBytesPerChar);
xmlparse.c:3629:        if (!declEntity->systemId)
xmlparse.c:3631:        declEntity->base = curBase;
xmlparse.c:3632:        poolFinish(&dtd->pool);
xmlparse.c:3638:      if (dtd->keepProcessing && declEntity && entityDeclHandler) {
xmlparse.c:3641:                          declEntity->name,
xmlparse.c:3642:                          declEntity->is_param,
xmlparse.c:3644:                          declEntity->base,
xmlparse.c:3645:                          declEntity->systemId,
xmlparse.c:3646:                          declEntity->publicId,
xmlparse.c:3652:      if (dtd->keepProcessing && declEntity) {
xmlparse.c:3653:        declEntity->notation = poolStoreString(&dtd->pool, enc, s, next);
xmlparse.c:3654:        if (!declEntity->notation)
xmlparse.c:3656:        poolFinish(&dtd->pool);
xmlparse.c:3660:                                    declEntity->name,
xmlparse.c:3661:                                    declEntity->base,
xmlparse.c:3662:                                    declEntity->systemId,
xmlparse.c:3663:                                    declEntity->publicId,
xmlparse.c:3664:                                    declEntity->notation);
xmlparse.c:3670:                            declEntity->name,
xmlparse.c:3672:                            declEntity->base,
xmlparse.c:3673:                            declEntity->systemId,
xmlparse.c:3674:                            declEntity->publicId,
xmlparse.c:3675:                            declEntity->notation);
xmlparse.c:3686:        if (dtd->keepProcessing) {
xmlparse.c:3687:          const XML_Char *name = poolStoreString(&dtd->pool, enc, s, next);
xmlparse.c:3690:          declEntity = (ENTITY *)lookup(&dtd->generalEntities, name,
xmlparse.c:3694:          if (declEntity->name != name) {
xmlparse.c:3695:            poolDiscard(&dtd->pool);
xmlparse.c:3699:            poolFinish(&dtd->pool);
xmlparse.c:3700:            declEntity->publicId = NULL;
xmlparse.c:3701:            declEntity->is_param = XML_FALSE;
xmlparse.c:3705:            declEntity->is_internal = !(parentParser || openInternalEntities);
xmlparse.c:3711:          poolDiscard(&dtd->pool);
xmlparse.c:3718:      if (dtd->keepProcessing) {
xmlparse.c:3719:        const XML_Char *name = poolStoreString(&dtd->pool, enc, s, next);
xmlparse.c:3722:        declEntity = (ENTITY *)lookup(&dtd->paramEntities,
xmlparse.c:3726:        if (declEntity->name != name) {
xmlparse.c:3727:          poolDiscard(&dtd->pool);
xmlparse.c:3731:          poolFinish(&dtd->pool);
xmlparse.c:3732:          declEntity->publicId = NULL;
xmlparse.c:3733:          declEntity->is_param = XML_TRUE;
xmlparse.c:3737:          declEntity->is_internal = !(parentParser || openInternalEntities);
xmlparse.c:3743:        poolDiscard(&dtd->pool);
xmlparse.c:3767:                                        s + enc->minBytesPerChar,
xmlparse.c:3768:                                        next - enc->minBytesPerChar);
xmlparse.c:3781:                            s + enc->minBytesPerChar,
xmlparse.c:3782:                            next - enc->minBytesPerChar);
xmlparse.c:3838:          if (dtd->scaffIndex) {
xmlparse.c:3839:            int *temp = (int *)REALLOC(dtd->scaffIndex,
xmlparse.c:3843:            dtd->scaffIndex = temp;
xmlparse.c:3853:      if (dtd->in_eldecl) {
xmlparse.c:3857:        dtd->scaffIndex[dtd->scaffLevel] = myindex;
xmlparse.c:3858:        dtd->scaffLevel++;
xmlparse.c:3859:        dtd->scaffold[myindex].type = XML_CTYPE_SEQ;
xmlparse.c:3868:      if (dtd->in_eldecl && elementDeclHandler)
xmlparse.c:3874:      if (dtd->in_eldecl
xmlparse.c:3876:          && (dtd->scaffold[dtd->scaffIndex[dtd->scaffLevel - 1]].type
xmlparse.c:3879:        dtd->scaffold[dtd->scaffIndex[dtd->scaffLevel - 1]].type
xmlparse.c:3894:      dtd->hasParamEntityRefs = XML_TRUE;
xmlparse.c:3896:        dtd->keepProcessing = dtd->standalone;
xmlparse.c:3900:        name = poolStoreString(&dtd->pool, enc,
xmlparse.c:3901:                                s + enc->minBytesPerChar,
xmlparse.c:3902:                                next - enc->minBytesPerChar);
xmlparse.c:3905:        entity = (ENTITY *)lookup(&dtd->paramEntities, name, 0);
xmlparse.c:3906:        poolDiscard(&dtd->pool);
xmlparse.c:3912:            (dtd->standalone
xmlparse.c:3914:             : !dtd->hasParamEntityRefs)) {
xmlparse.c:3917:          else if (!entity->is_internal)
xmlparse.c:3921:          dtd->keepProcessing = dtd->standalone;
xmlparse.c:3929:        if (entity->open)
xmlparse.c:3931:        if (entity->textPtr) {
xmlparse.c:3940:          dtd->paramEntityRead = XML_FALSE;
xmlparse.c:3941:          entity->open = XML_TRUE;
xmlparse.c:3944:                                        entity->base,
xmlparse.c:3945:                                        entity->systemId,
xmlparse.c:3946:                                        entity->publicId)) {
xmlparse.c:3947:            entity->open = XML_FALSE;
xmlparse.c:3950:          entity->open = XML_FALSE;
xmlparse.c:3952:          if (!dtd->paramEntityRead) {
xmlparse.c:3953:            dtd->keepProcessing = dtd->standalone;
xmlparse.c:3958:          dtd->keepProcessing = dtd->standalone;
xmlparse.c:3963:      if (!dtd->standalone &&
xmlparse.c:3976:        dtd->scaffLevel = 0;
xmlparse.c:3977:        dtd->scaffCount = 0;
xmlparse.c:3978:        dtd->in_eldecl = XML_TRUE;
xmlparse.c:3985:      if (dtd->in_eldecl) {
xmlparse.c:3990:          content->quant = XML_CQUANT_NONE;
xmlparse.c:3991:          content->name = NULL;
xmlparse.c:3992:          content->numchildren = 0;
xmlparse.c:3993:          content->children = NULL;
xmlparse.c:3994:          content->type = ((role == XML_ROLE_CONTENT_ANY) ?
xmlparse.c:3998:          elementDeclHandler(handlerArg, declElementType->name, content);
xmlparse.c:4001:        dtd->in_eldecl = XML_FALSE;
xmlparse.c:4006:      if (dtd->in_eldecl) {
xmlparse.c:4007:        dtd->scaffold[dtd->scaffIndex[dtd->scaffLevel - 1]].type
xmlparse.c:4026:      if (dtd->in_eldecl) {
xmlparse.c:4032:                           : next - enc->minBytesPerChar);
xmlparse.c:4036:        dtd->scaffold[myindex].type = XML_CTYPE_NAME;
xmlparse.c:4037:        dtd->scaffold[myindex].quant = quant;
xmlparse.c:4041:        name = el->name;
xmlparse.c:4042:        dtd->scaffold[myindex].name = name;
xmlparse.c:4045:        dtd->contentStringLen +=  nameLen;
xmlparse.c:4063:      if (dtd->in_eldecl) {
xmlparse.c:4066:        dtd->scaffLevel--;
xmlparse.c:4067:        dtd->scaffold[dtd->scaffIndex[dtd->scaffLevel]].quant = quant;
xmlparse.c:4068:        if (dtd->scaffLevel == 0) {
xmlparse.c:4074:            elementDeclHandler(handlerArg, declElementType->name, model);
xmlparse.c:4076:          dtd->in_eldecl = XML_FALSE;
xmlparse.c:4077:          dtd->contentStringLen = 0;
xmlparse.c:4105:      if (dtd->keepProcessing && entityDeclHandler)
xmlparse.c:4113:      if (dtd->keepProcessing && attlistDeclHandler)
xmlparse.c:4144:    /* report partial linebreak - it might be the last token */
xmlparse.c:4145:    case -XML_TOK_PROLOG_S:
xmlparse.c:4200:  entity->open = XML_TRUE;
xmlparse.c:4206:  s = (char *)entity->textPtr;
xmlparse.c:4207:  end = (char *)(entity->textPtr + entity->textLen);
xmlparse.c:4210:  entity->open = XML_FALSE;
xmlparse.c:4293:      next = ptr + enc->minBytesPerChar;
xmlparse.c:4308:                                              ptr + enc->minBytesPerChar,
xmlparse.c:4309:                                              next - enc->minBytesPerChar);
xmlparse.c:4316:                               ptr + enc->minBytesPerChar,
xmlparse.c:4317:                               next - enc->minBytesPerChar);
xmlparse.c:4320:        entity = (ENTITY *)lookup(&dtd->generalEntities, name, 0);
xmlparse.c:4326:        if (pool == &dtd->pool)  /* are we called from prolog? */
xmlparse.c:4331:              (dtd->standalone
xmlparse.c:4333:               : !dtd->hasParamEntityRefs);
xmlparse.c:4335:          checkEntityDecl = !dtd->hasParamEntityRefs || dtd->standalone;
xmlparse.c:4339:          else if (!entity->is_internal)
xmlparse.c:4343:          /* cannot report skipped entity here - see comments on
xmlparse.c:4352:        if (entity->open) {
xmlparse.c:4357:        if (entity->notation) {
xmlparse.c:4362:        if (!entity->textPtr) {
xmlparse.c:4369:          const XML_Char *textEnd = entity->textPtr + entity->textLen;
xmlparse.c:4370:          entity->open = XML_TRUE;
xmlparse.c:4372:                                        (char *)entity->textPtr,
xmlparse.c:4374:          entity->open = XML_FALSE;
xmlparse.c:4397:  STRING_POOL *pool = &(dtd->entityValuePool);
xmlparse.c:4406:  if (!pool->blocks) {
xmlparse.c:4421:                               entityTextPtr + enc->minBytesPerChar,
xmlparse.c:4422:                               next - enc->minBytesPerChar);
xmlparse.c:4427:        entity = (ENTITY *)lookup(&dtd->paramEntities, name, 0);
xmlparse.c:4430:          /* not a well-formedness error - see XML 1.0: WFC Entity Declared */
xmlparse.c:4431:          /* cannot report skipped entity here - see comments on
xmlparse.c:4436:          dtd->keepProcessing = dtd->standalone;
xmlparse.c:4439:        if (entity->open) {
xmlparse.c:4445:        if (entity->systemId) {
xmlparse.c:4447:            dtd->paramEntityRead = XML_FALSE;
xmlparse.c:4448:            entity->open = XML_TRUE;
xmlparse.c:4451:                                          entity->base,
xmlparse.c:4452:                                          entity->systemId,
xmlparse.c:4453:                                          entity->publicId)) {
xmlparse.c:4454:              entity->open = XML_FALSE;
xmlparse.c:4458:            entity->open = XML_FALSE;
xmlparse.c:4459:            if (!dtd->paramEntityRead)
xmlparse.c:4460:              dtd->keepProcessing = dtd->standalone;
xmlparse.c:4463:            dtd->keepProcessing = dtd->standalone;
xmlparse.c:4466:          entity->open = XML_TRUE;
xmlparse.c:4469:                                    (char *)entity->textPtr,
xmlparse.c:4470:                                    (char *)(entity->textPtr
xmlparse.c:4471:                                             + entity->textLen));
xmlparse.c:4472:          entity->open = XML_FALSE;
xmlparse.c:4495:      next = entityTextPtr + enc->minBytesPerChar;
xmlparse.c:4498:      if (pool->end == pool->ptr && !poolGrow(pool)) {
xmlparse.c:4502:      *(pool->ptr)++ = 0xA;
xmlparse.c:4523:          if (pool->end == pool->ptr && !poolGrow(pool)) {
xmlparse.c:4527:          *(pool->ptr)++ = buf[i];
xmlparse.c:4591:  start += enc->minBytesPerChar * 2;
xmlparse.c:4599:                        end - enc->minBytesPerChar*2);
xmlparse.c:4620:                         start + enc->minBytesPerChar * 4,
xmlparse.c:4621:                         end - enc->minBytesPerChar * 3);
xmlparse.c:4642:      eventPP = &(openInternalEntities->internalEventPtr);
xmlparse.c:4643:      eventEndPP = &(openInternalEntities->internalEventEndPtr);
xmlparse.c:4649:      defaultHandler(handlerArg, dataBuf, dataPtr - (ICHAR *)dataBuf);
xmlparse.c:4654:    defaultHandler(handlerArg, (XML_Char *)s, (XML_Char *)end - (XML_Char *)s);
xmlparse.c:4665:       a default which duplicates a non-default. */
xmlparse.c:4667:    for (i = 0; i < type->nDefaultAtts; i++)
xmlparse.c:4668:      if (attId == type->defaultAtts[i].id)
xmlparse.c:4670:    if (isId && !type->idAtt && !attId->xmlns)
xmlparse.c:4671:      type->idAtt = attId;
xmlparse.c:4673:  if (type->nDefaultAtts == type->allocDefaultAtts) {
xmlparse.c:4674:    if (type->allocDefaultAtts == 0) {
xmlparse.c:4675:      type->allocDefaultAtts = 8;
xmlparse.c:4676:      type->defaultAtts = (DEFAULT_ATTRIBUTE *)MALLOC(type->allocDefaultAtts 
xmlparse.c:4678:      if (!type->defaultAtts)
xmlparse.c:4683:      int count = type->allocDefaultAtts * 2;
xmlparse.c:4685:        REALLOC(type->defaultAtts, (count * sizeof(DEFAULT_ATTRIBUTE)));
xmlparse.c:4688:      type->allocDefaultAtts = count;
xmlparse.c:4689:      type->defaultAtts = temp;
xmlparse.c:4692:  att = type->defaultAtts + type->nDefaultAtts;
xmlparse.c:4693:  att->id = attId;
xmlparse.c:4694:  att->value = value;
xmlparse.c:4695:  att->isCdata = isCdata;
xmlparse.c:4697:    attId->maybeTokenized = XML_TRUE;
xmlparse.c:4698:  type->nDefaultAtts += 1;
xmlparse.c:4707:  for (name = elementType->name; *name; name++) {
xmlparse.c:4711:      for (s = elementType->name; s != name; s++) {
xmlparse.c:4712:        if (!poolAppendChar(&dtd->pool, *s))
xmlparse.c:4715:      if (!poolAppendChar(&dtd->pool, XML_T('\0')))
xmlparse.c:4717:      prefix = (PREFIX *)lookup(&dtd->prefixes, poolStart(&dtd->pool),
xmlparse.c:4721:      if (prefix->name == poolStart(&dtd->pool))
xmlparse.c:4722:        poolFinish(&dtd->pool);
xmlparse.c:4724:        poolDiscard(&dtd->pool);
xmlparse.c:4725:      elementType->prefix = prefix;
xmlparse.c:4739:  if (!poolAppendChar(&dtd->pool, XML_T('\0')))
xmlparse.c:4741:  name = poolStoreString(&dtd->pool, enc, start, end);
xmlparse.c:4745:  id = (ATTRIBUTE_ID *)lookup(&dtd->attributeIds, name, sizeof(ATTRIBUTE_ID));
xmlparse.c:4748:  if (id->name != name)
xmlparse.c:4749:    poolDiscard(&dtd->pool);
xmlparse.c:4751:    poolFinish(&dtd->pool);
xmlparse.c:4761:        id->prefix = &dtd->defaultPrefix;
xmlparse.c:4763:        id->prefix = (PREFIX *)lookup(&dtd->prefixes, name + 6, sizeof(PREFIX));
xmlparse.c:4764:      id->xmlns = XML_TRUE;
xmlparse.c:4772:            if (!poolAppendChar(&dtd->pool, name[j]))
xmlparse.c:4775:          if (!poolAppendChar(&dtd->pool, XML_T('\0')))
xmlparse.c:4777:          id->prefix = (PREFIX *)lookup(&dtd->prefixes, poolStart(&dtd->pool),
xmlparse.c:4779:          if (id->prefix->name == poolStart(&dtd->pool))
xmlparse.c:4780:            poolFinish(&dtd->pool);
xmlparse.c:4782:            poolDiscard(&dtd->pool);
xmlparse.c:4800:  if (dtd->defaultPrefix.binding) {
xmlparse.c:4805:    len = dtd->defaultPrefix.binding->uriLen;
xmlparse.c:4807:      len--;
xmlparse.c:4809:      if (!poolAppendChar(&tempPool, dtd->defaultPrefix.binding->uri[i]))
xmlparse.c:4814:  hashTableIterInit(&iter, &(dtd->prefixes));
xmlparse.c:4822:    if (!prefix->binding)
xmlparse.c:4826:    for (s = prefix->name; *s; s++)
xmlparse.c:4831:    len = prefix->binding->uriLen;
xmlparse.c:4833:      len--;
xmlparse.c:4835:      if (!poolAppendChar(&tempPool, prefix->binding->uri[i]))
xmlparse.c:4841:  hashTableIterInit(&iter, &(dtd->generalEntities));
xmlparse.c:4847:    if (!e->open)
xmlparse.c:4851:    for (s = e->name; *s; s++)
xmlparse.c:4873:      e = (ENTITY *)lookup(&dtd->generalEntities, poolStart(&tempPool), 0);
xmlparse.c:4875:        e->open = XML_TRUE;
xmlparse.c:4884:        prefix = &dtd->defaultPrefix;
xmlparse.c:4888:        prefix = (PREFIX *)lookup(&dtd->prefixes, poolStart(&tempPool),
xmlparse.c:4892:        if (prefix->name == poolStart(&tempPool)) {
xmlparse.c:4893:          prefix->name = poolCopyString(&dtd->pool, prefix->name);
xmlparse.c:4894:          if (!prefix->name)
xmlparse.c:4933:      if (p != publicId && p[-1] != 0x20)
xmlparse.c:4940:  if (p != publicId && p[-1] == 0x20)
xmlparse.c:4941:    --p;
xmlparse.c:4948:  DTD *p = (DTD *)ms->malloc_fcn(sizeof(DTD));
xmlparse.c:4951:  poolInit(&(p->pool), ms);
xmlparse.c:4953:  poolInit(&(p->entityValuePool), ms);
xmlparse.c:4955:  hashTableInit(&(p->generalEntities), ms);
xmlparse.c:4956:  hashTableInit(&(p->elementTypes), ms);
xmlparse.c:4957:  hashTableInit(&(p->attributeIds), ms);
xmlparse.c:4958:  hashTableInit(&(p->prefixes), ms);
xmlparse.c:4960:  p->paramEntityRead = XML_FALSE;
xmlparse.c:4961:  hashTableInit(&(p->paramEntities), ms);
xmlparse.c:4963:  p->defaultPrefix.name = NULL;
xmlparse.c:4964:  p->defaultPrefix.binding = NULL;
xmlparse.c:4966:  p->in_eldecl = XML_FALSE;
xmlparse.c:4967:  p->scaffIndex = NULL;
xmlparse.c:4968:  p->scaffold = NULL;
xmlparse.c:4969:  p->scaffLevel = 0;
xmlparse.c:4970:  p->scaffSize = 0;
xmlparse.c:4971:  p->scaffCount = 0;
xmlparse.c:4972:  p->contentStringLen = 0;
xmlparse.c:4974:  p->keepProcessing = XML_TRUE;
xmlparse.c:4975:  p->hasParamEntityRefs = XML_FALSE;
xmlparse.c:4976:  p->standalone = XML_FALSE;
xmlparse.c:4984:  hashTableIterInit(&iter, &(p->elementTypes));
xmlparse.c:4989:    if (e->allocDefaultAtts != 0)
xmlparse.c:4990:      ms->free_fcn(e->defaultAtts);
xmlparse.c:4992:  hashTableClear(&(p->generalEntities));
xmlparse.c:4994:  p->paramEntityRead = XML_FALSE;
xmlparse.c:4995:  hashTableClear(&(p->paramEntities));
xmlparse.c:4997:  hashTableClear(&(p->elementTypes));
xmlparse.c:4998:  hashTableClear(&(p->attributeIds));
xmlparse.c:4999:  hashTableClear(&(p->prefixes));
xmlparse.c:5000:  poolClear(&(p->pool));
xmlparse.c:5002:  poolClear(&(p->entityValuePool));
xmlparse.c:5004:  p->defaultPrefix.name = NULL;
xmlparse.c:5005:  p->defaultPrefix.binding = NULL;
xmlparse.c:5007:  p->in_eldecl = XML_FALSE;
xmlparse.c:5008:  if (p->scaffIndex) {
xmlparse.c:5009:    ms->free_fcn(p->scaffIndex);
xmlparse.c:5010:    p->scaffIndex = NULL;
xmlparse.c:5012:  if (p->scaffold) {
xmlparse.c:5013:    ms->free_fcn(p->scaffold);
xmlparse.c:5014:    p->scaffold = NULL;
xmlparse.c:5016:  p->scaffLevel = 0;
xmlparse.c:5017:  p->scaffSize = 0;
xmlparse.c:5018:  p->scaffCount = 0;
xmlparse.c:5019:  p->contentStringLen = 0;
xmlparse.c:5021:  p->keepProcessing = XML_TRUE;
xmlparse.c:5022:  p->hasParamEntityRefs = XML_FALSE;
xmlparse.c:5023:  p->standalone = XML_FALSE;
xmlparse.c:5030:  hashTableIterInit(&iter, &(p->elementTypes));
xmlparse.c:5035:    if (e->allocDefaultAtts != 0)
xmlparse.c:5036:      ms->free_fcn(e->defaultAtts);
xmlparse.c:5038:  hashTableDestroy(&(p->generalEntities));
xmlparse.c:5040:  hashTableDestroy(&(p->paramEntities));
xmlparse.c:5042:  hashTableDestroy(&(p->elementTypes));
xmlparse.c:5043:  hashTableDestroy(&(p->attributeIds));
xmlparse.c:5044:  hashTableDestroy(&(p->prefixes));
xmlparse.c:5045:  poolDestroy(&(p->pool));
xmlparse.c:5047:  poolDestroy(&(p->entityValuePool));
xmlparse.c:5050:    if (p->scaffIndex)
xmlparse.c:5051:      ms->free_fcn(p->scaffIndex);
xmlparse.c:5052:    if (p->scaffold)
xmlparse.c:5053:      ms->free_fcn(p->scaffold);
xmlparse.c:5055:  ms->free_fcn(p);
xmlparse.c:5058:/* Do a deep copy of the DTD. Return 0 for out of memory, non-zero otherwise.
xmlparse.c:5068:  hashTableIterInit(&iter, &(oldDtd->prefixes));
xmlparse.c:5074:    name = poolCopyString(&(newDtd->pool), oldP->name);
xmlparse.c:5077:    if (!lookup(&(newDtd->prefixes), name, sizeof(PREFIX)))
xmlparse.c:5081:  hashTableIterInit(&iter, &(oldDtd->attributeIds));
xmlparse.c:5093:    if (!poolAppendChar(&(newDtd->pool), XML_T('\0')))
xmlparse.c:5095:    name = poolCopyString(&(newDtd->pool), oldA->name);
xmlparse.c:5099:    newA = (ATTRIBUTE_ID *)lookup(&(newDtd->attributeIds), name,
xmlparse.c:5103:    newA->maybeTokenized = oldA->maybeTokenized;
xmlparse.c:5104:    if (oldA->prefix) {
xmlparse.c:5105:      newA->xmlns = oldA->xmlns;
xmlparse.c:5106:      if (oldA->prefix == &oldDtd->defaultPrefix)
xmlparse.c:5107:        newA->prefix = &newDtd->defaultPrefix;
xmlparse.c:5109:        newA->prefix = (PREFIX *)lookup(&(newDtd->prefixes),
xmlparse.c:5110:                                        oldA->prefix->name, 0);
xmlparse.c:5116:  hashTableIterInit(&iter, &(oldDtd->elementTypes));
xmlparse.c:5125:    name = poolCopyString(&(newDtd->pool), oldE->name);
xmlparse.c:5128:    newE = (ELEMENT_TYPE *)lookup(&(newDtd->elementTypes), name,
xmlparse.c:5132:    if (oldE->nDefaultAtts) {
xmlparse.c:5133:      newE->defaultAtts = (DEFAULT_ATTRIBUTE *)
xmlparse.c:5134:          ms->malloc_fcn(oldE->nDefaultAtts * sizeof(DEFAULT_ATTRIBUTE));
xmlparse.c:5135:      if (!newE->defaultAtts) {
xmlparse.c:5136:        ms->free_fcn(newE);
xmlparse.c:5140:    if (oldE->idAtt)
xmlparse.c:5141:      newE->idAtt = (ATTRIBUTE_ID *)
xmlparse.c:5142:          lookup(&(newDtd->attributeIds), oldE->idAtt->name, 0);
xmlparse.c:5143:    newE->allocDefaultAtts = newE->nDefaultAtts = oldE->nDefaultAtts;
xmlparse.c:5144:    if (oldE->prefix)
xmlparse.c:5145:      newE->prefix = (PREFIX *)lookup(&(newDtd->prefixes),
xmlparse.c:5146:                                      oldE->prefix->name, 0);
xmlparse.c:5147:    for (i = 0; i < newE->nDefaultAtts; i++) {
xmlparse.c:5148:      newE->defaultAtts[i].id = (ATTRIBUTE_ID *)
xmlparse.c:5149:          lookup(&(newDtd->attributeIds), oldE->defaultAtts[i].id->name, 0);
xmlparse.c:5150:      newE->defaultAtts[i].isCdata = oldE->defaultAtts[i].isCdata;
xmlparse.c:5151:      if (oldE->defaultAtts[i].value) {
xmlparse.c:5152:        newE->defaultAtts[i].value
xmlparse.c:5153:            = poolCopyString(&(newDtd->pool), oldE->defaultAtts[i].value);
xmlparse.c:5154:        if (!newE->defaultAtts[i].value)
xmlparse.c:5158:        newE->defaultAtts[i].value = NULL;
xmlparse.c:5163:  if (!copyEntityTable(&(newDtd->generalEntities),
xmlparse.c:5164:                       &(newDtd->pool),
xmlparse.c:5165:                       &(oldDtd->generalEntities)))
xmlparse.c:5169:  if (!copyEntityTable(&(newDtd->paramEntities),
xmlparse.c:5170:                       &(newDtd->pool),
xmlparse.c:5171:                       &(oldDtd->paramEntities)))
xmlparse.c:5173:  newDtd->paramEntityRead = oldDtd->paramEntityRead;
xmlparse.c:5176:  newDtd->keepProcessing = oldDtd->keepProcessing;
xmlparse.c:5177:  newDtd->hasParamEntityRefs = oldDtd->hasParamEntityRefs;
xmlparse.c:5178:  newDtd->standalone = oldDtd->standalone;
xmlparse.c:5181:  newDtd->in_eldecl = oldDtd->in_eldecl;
xmlparse.c:5182:  newDtd->scaffold = oldDtd->scaffold;
xmlparse.c:5183:  newDtd->contentStringLen = oldDtd->contentStringLen;
xmlparse.c:5184:  newDtd->scaffSize = oldDtd->scaffSize;
xmlparse.c:5185:  newDtd->scaffLevel = oldDtd->scaffLevel;
xmlparse.c:5186:  newDtd->scaffIndex = oldDtd->scaffIndex;
xmlparse.c:5208:    name = poolCopyString(newPool, oldE->name);
xmlparse.c:5214:    if (oldE->systemId) {
xmlparse.c:5215:      const XML_Char *tem = poolCopyString(newPool, oldE->systemId);
xmlparse.c:5218:      newE->systemId = tem;
xmlparse.c:5219:      if (oldE->base) {
xmlparse.c:5220:        if (oldE->base == cachedOldBase)
xmlparse.c:5221:          newE->base = cachedNewBase;
xmlparse.c:5223:          cachedOldBase = oldE->base;
xmlparse.c:5227:          cachedNewBase = newE->base = tem;
xmlparse.c:5230:      if (oldE->publicId) {
xmlparse.c:5231:        tem = poolCopyString(newPool, oldE->publicId);
xmlparse.c:5234:        newE->publicId = tem;
xmlparse.c:5238:      const XML_Char *tem = poolCopyStringN(newPool, oldE->textPtr,
xmlparse.c:5239:                                            oldE->textLen);
xmlparse.c:5242:      newE->textPtr = tem;
xmlparse.c:5243:      newE->textLen = oldE->textLen;
xmlparse.c:5245:    if (oldE->notation) {
xmlparse.c:5246:      const XML_Char *tem = poolCopyString(newPool, oldE->notation);
xmlparse.c:5249:      newE->notation = tem;
xmlparse.c:5251:    newE->is_param = oldE->is_param;
xmlparse.c:5252:    newE->is_internal = oldE->is_internal;
xmlparse.c:5281:  if (table->size == 0) {
xmlparse.c:5287:    table->v = (NAMED **)table->mem->malloc_fcn(tsize);
xmlparse.c:5288:    if (!table->v)
xmlparse.c:5290:    memset(table->v, 0, tsize);
xmlparse.c:5291:    table->size = INIT_SIZE;
xmlparse.c:5292:    table->usedLim = INIT_SIZE / 2;
xmlparse.c:5293:    i = hash(name) & (table->size - 1);
xmlparse.c:5297:    for (i = h & (table->size - 1);
xmlparse.c:5298:         table->v[i];
xmlparse.c:5299:         i == 0 ? i = table->size - 1 : --i) {
xmlparse.c:5300:      if (keyeq(name, table->v[i]->name))
xmlparse.c:5301:        return table->v[i];
xmlparse.c:5305:    if (table->used == table->usedLim) {
xmlparse.c:5307:      size_t newSize = table->size * 2;
xmlparse.c:5309:      NAMED **newV = (NAMED **)table->mem->malloc_fcn(tsize);
xmlparse.c:5313:      for (i = 0; i < table->size; i++)
xmlparse.c:5314:        if (table->v[i]) {
xmlparse.c:5316:          for (j = hash(table->v[i]->name) & (newSize - 1);
xmlparse.c:5318:               j == 0 ? j = newSize - 1 : --j)
xmlparse.c:5320:          newV[j] = table->v[i];
xmlparse.c:5322:      table->mem->free_fcn(table->v);
xmlparse.c:5323:      table->v = newV;
xmlparse.c:5324:      table->size = newSize;
xmlparse.c:5325:      table->usedLim = newSize/2;
xmlparse.c:5326:      for (i = h & (table->size - 1);
xmlparse.c:5327:           table->v[i];
xmlparse.c:5328:           i == 0 ? i = table->size - 1 : --i)
xmlparse.c:5332:  table->v[i] = (NAMED *)table->mem->malloc_fcn(createSize);
xmlparse.c:5333:  if (!table->v[i])
xmlparse.c:5335:  memset(table->v[i], 0, createSize);
xmlparse.c:5336:  table->v[i]->name = name;
xmlparse.c:5337:  (table->used)++;
xmlparse.c:5338:  return table->v[i];
xmlparse.c:5345:  for (i = 0; i < table->size; i++) {
xmlparse.c:5346:    NAMED *p = table->v[i];
xmlparse.c:5348:      table->mem->free_fcn(p);
xmlparse.c:5349:      table->v[i] = NULL;
xmlparse.c:5352:  table->usedLim = table->size / 2;
xmlparse.c:5353:  table->used = 0;
xmlparse.c:5360:  for (i = 0; i < table->size; i++) {
xmlparse.c:5361:    NAMED *p = table->v[i];
xmlparse.c:5363:      table->mem->free_fcn(p);
xmlparse.c:5365:  if (table->v)
xmlparse.c:5366:    table->mem->free_fcn(table->v);
xmlparse.c:5372:  p->size = 0;
xmlparse.c:5373:  p->usedLim = 0;
xmlparse.c:5374:  p->used = 0;
xmlparse.c:5375:  p->v = NULL;
xmlparse.c:5376:  p->mem = ms;
xmlparse.c:5382:  iter->p = table->v;
xmlparse.c:5383:  iter->end = iter->p + table->size;
xmlparse.c:5389:  while (iter->p != iter->end) {
xmlparse.c:5390:    NAMED *tem = *(iter->p)++;
xmlparse.c:5400:  pool->blocks = NULL;
xmlparse.c:5401:  pool->freeBlocks = NULL;
xmlparse.c:5402:  pool->start = NULL;
xmlparse.c:5403:  pool->ptr = NULL;
xmlparse.c:5404:  pool->end = NULL;
xmlparse.c:5405:  pool->mem = ms;
xmlparse.c:5411:  if (!pool->freeBlocks)
xmlparse.c:5412:    pool->freeBlocks = pool->blocks;
xmlparse.c:5414:    BLOCK *p = pool->blocks;
xmlparse.c:5416:      BLOCK *tem = p->next;
xmlparse.c:5417:      p->next = pool->freeBlocks;
xmlparse.c:5418:      pool->freeBlocks = p;
xmlparse.c:5422:  pool->blocks = NULL;
xmlparse.c:5423:  pool->start = NULL;
xmlparse.c:5424:  pool->ptr = NULL;
xmlparse.c:5425:  pool->end = NULL;
xmlparse.c:5431:  BLOCK *p = pool->blocks;
xmlparse.c:5433:    BLOCK *tem = p->next;
xmlparse.c:5434:    pool->mem->free_fcn(p);
xmlparse.c:5437:  p = pool->freeBlocks;
xmlparse.c:5439:    BLOCK *tem = p->next;
xmlparse.c:5440:    pool->mem->free_fcn(p);
xmlparse.c:5449:  if (!pool->ptr && !poolGrow(pool))
xmlparse.c:5452:    XmlConvert(enc, &ptr, end, (ICHAR **)&(pool->ptr), (ICHAR *)pool->end);
xmlparse.c:5458:  return pool->start;
xmlparse.c:5468:  s = pool->start;
xmlparse.c:5476:  if (!pool->ptr && !poolGrow(pool))
xmlparse.c:5478:  for (; n > 0; --n, s++) {
xmlparse.c:5482:  s = pool->start;
xmlparse.c:5495:  return pool->start;
xmlparse.c:5504:  if (pool->ptr == pool->end && !poolGrow(pool))
xmlparse.c:5506:  *(pool->ptr)++ = 0;
xmlparse.c:5507:  return pool->start;
xmlparse.c:5513:  if (pool->freeBlocks) {
xmlparse.c:5514:    if (pool->start == 0) {
xmlparse.c:5515:      pool->blocks = pool->freeBlocks;
xmlparse.c:5516:      pool->freeBlocks = pool->freeBlocks->next;
xmlparse.c:5517:      pool->blocks->next = NULL;
xmlparse.c:5518:      pool->start = pool->blocks->s;
xmlparse.c:5519:      pool->end = pool->start + pool->blocks->size;
xmlparse.c:5520:      pool->ptr = pool->start;
xmlparse.c:5523:    if (pool->end - pool->start < pool->freeBlocks->size) {
xmlparse.c:5524:      BLOCK *tem = pool->freeBlocks->next;
xmlparse.c:5525:      pool->freeBlocks->next = pool->blocks;
xmlparse.c:5526:      pool->blocks = pool->freeBlocks;
xmlparse.c:5527:      pool->freeBlocks = tem;
xmlparse.c:5528:      memcpy(pool->blocks->s, pool->start,
xmlparse.c:5529:             (pool->end - pool->start) * sizeof(XML_Char));
xmlparse.c:5530:      pool->ptr = pool->blocks->s + (pool->ptr - pool->start);
xmlparse.c:5531:      pool->start = pool->blocks->s;
xmlparse.c:5532:      pool->end = pool->start + pool->blocks->size;
xmlparse.c:5536:  if (pool->blocks && pool->start == pool->blocks->s) {
xmlparse.c:5537:    int blockSize = (pool->end - pool->start)*2;
xmlparse.c:5538:    pool->blocks = (BLOCK *)
xmlparse.c:5539:      pool->mem->realloc_fcn(pool->blocks,
xmlparse.c:5542:    if (pool->blocks == NULL)
xmlparse.c:5544:    pool->blocks->size = blockSize;
xmlparse.c:5545:    pool->ptr = pool->blocks->s + (pool->ptr - pool->start);
xmlparse.c:5546:    pool->start = pool->blocks->s;
xmlparse.c:5547:    pool->end = pool->start + blockSize;
xmlparse.c:5551:    int blockSize = pool->end - pool->start;
xmlparse.c:5556:    tem = (BLOCK *)pool->mem->malloc_fcn(offsetof(BLOCK, s)
xmlparse.c:5560:    tem->size = blockSize;
xmlparse.c:5561:    tem->next = pool->blocks;
xmlparse.c:5562:    pool->blocks = tem;
xmlparse.c:5563:    if (pool->ptr != pool->start)
xmlparse.c:5564:      memcpy(tem->s, pool->start,
xmlparse.c:5565:             (pool->ptr - pool->start) * sizeof(XML_Char));
xmlparse.c:5566:    pool->ptr = tem->s + (pool->ptr - pool->start);
xmlparse.c:5567:    pool->start = tem->s;
xmlparse.c:5568:    pool->end = tem->s + blockSize;
xmlparse.c:5580:  if (!dtd->scaffIndex) {
xmlparse.c:5581:    dtd->scaffIndex = (int *)MALLOC(groupSize * sizeof(int));
xmlparse.c:5582:    if (!dtd->scaffIndex)
xmlparse.c:5583:      return -1;
xmlparse.c:5584:    dtd->scaffIndex[0] = 0;
xmlparse.c:5587:  if (dtd->scaffCount >= dtd->scaffSize) {
xmlparse.c:5589:    if (dtd->scaffold) {
xmlparse.c:5591:        REALLOC(dtd->scaffold, dtd->scaffSize * 2 * sizeof(CONTENT_SCAFFOLD));
xmlparse.c:5593:        return -1;
xmlparse.c:5594:      dtd->scaffSize *= 2;
xmlparse.c:5600:        return -1;
xmlparse.c:5601:      dtd->scaffSize = INIT_SCAFFOLD_ELEMENTS;
xmlparse.c:5603:    dtd->scaffold = temp;
xmlparse.c:5605:  next = dtd->scaffCount++;
xmlparse.c:5606:  me = &dtd->scaffold[next];
xmlparse.c:5607:  if (dtd->scaffLevel) {
xmlparse.c:5608:    CONTENT_SCAFFOLD *parent = &dtd->scaffold[dtd->scaffIndex[dtd->scaffLevel-1]];
xmlparse.c:5609:    if (parent->lastchild) {
xmlparse.c:5610:      dtd->scaffold[parent->lastchild].nextsib = next;
xmlparse.c:5612:    if (!parent->childcnt)
xmlparse.c:5613:      parent->firstchild = next;
xmlparse.c:5614:    parent->lastchild = next;
xmlparse.c:5615:    parent->childcnt++;
xmlparse.c:5617:  me->firstchild = me->lastchild = me->childcnt = me->nextsib = 0;
xmlparse.c:5629:  dest->type = dtd->scaffold[src_node].type;
xmlparse.c:5630:  dest->quant = dtd->scaffold[src_node].quant;
xmlparse.c:5631:  if (dest->type == XML_CTYPE_NAME) {
xmlparse.c:5633:    dest->name = *strpos;
xmlparse.c:5634:    src = dtd->scaffold[src_node].name;
xmlparse.c:5641:    dest->numchildren = 0;
xmlparse.c:5642:    dest->children = NULL;
xmlparse.c:5647:    dest->numchildren = dtd->scaffold[src_node].childcnt;
xmlparse.c:5648:    dest->children = *contpos;
xmlparse.c:5649:    *contpos += dest->numchildren;
xmlparse.c:5650:    for (i = 0, cn = dtd->scaffold[src_node].firstchild;
xmlparse.c:5651:         i < dest->numchildren;
xmlparse.c:5652:         i++, cn = dtd->scaffold[cn].nextsib) {
xmlparse.c:5653:      build_node(parser, cn, &(dest->children[i]), contpos, strpos);
xmlparse.c:5655:    dest->name = NULL;
xmlparse.c:5666:  int allocsize = (dtd->scaffCount * sizeof(XML_Content)
xmlparse.c:5667:                   + (dtd->contentStringLen * sizeof(XML_Char)));
xmlparse.c:5673:  str =  (XML_Char *) (&ret[dtd->scaffCount]);
xmlparse.c:5687:  const XML_Char *name = poolStoreString(&dtd->pool, enc, ptr, end);
xmlparse.c:5692:  ret = (ELEMENT_TYPE *) lookup(&dtd->elementTypes, name, sizeof(ELEMENT_TYPE));
xmlparse.c:5695:  if (ret->name != name)
xmlparse.c:5696:    poolDiscard(&dtd->pool);
xmlparse.c:5698:    poolFinish(&dtd->pool);
Хʥ꡼եxmlparse.oϰפޤ
xmlrole.c:78:#define MIN_BYTES_PER_CHAR(enc) ((enc)->minBytesPerChar)
xmlrole.c:83:  ((state)->handler = ((state)->documentEntity \
xmlrole.c:87:#define setTopLevel(state) ((state)->handler = internalSubset)
xmlrole.c:125:    state->handler = prolog1;
xmlrole.c:128:    state->handler = prolog1;
xmlrole.c:131:    state->handler = prolog1;
xmlrole.c:134:    state->handler = prolog1;
xmlrole.c:144:    state->handler = doctype0;
xmlrole.c:147:    state->handler = error;
xmlrole.c:175:    state->handler = doctype0;
xmlrole.c:178:    state->handler = error;
xmlrole.c:199:    state->handler = error;
xmlrole.c:217:    state->handler = doctype1;
xmlrole.c:234:    state->handler = internalSubset;
xmlrole.c:237:    state->handler = prolog2;
xmlrole.c:241:      state->handler = doctype3;
xmlrole.c:245:      state->handler = doctype2;
xmlrole.c:264:    state->handler = doctype3;
xmlrole.c:281:    state->handler = doctype4;
xmlrole.c:298:    state->handler = internalSubset;
xmlrole.c:301:    state->handler = prolog2;
xmlrole.c:318:    state->handler = prolog2;
xmlrole.c:339:      state->handler = entity0;
xmlrole.c:346:      state->handler = attlist0;
xmlrole.c:353:      state->handler = element0;
xmlrole.c:360:      state->handler = notation0;
xmlrole.c:371:    state->handler = doctype5;
xmlrole.c:386:  state->handler = externalSubset1;
xmlrole.c:401:    state->handler = condSect0;
xmlrole.c:404:    if (state->includeLevel == 0)
xmlrole.c:406:    state->includeLevel -= 1;
xmlrole.c:413:    if (state->includeLevel)
xmlrole.c:435:    state->handler = entity1;
xmlrole.c:438:    state->handler = entity2;
xmlrole.c:455:    state->handler = entity7;
xmlrole.c:473:      state->handler = entity4;
xmlrole.c:477:      state->handler = entity3;
xmlrole.c:482:    state->handler = declClose;
xmlrole.c:483:    state->role_none = XML_ROLE_ENTITY_NONE;
xmlrole.c:500:    state->handler = entity4;
xmlrole.c:517:    state->handler = entity5;
xmlrole.c:538:      state->handler = entity6;
xmlrole.c:557:    state->handler = declClose;
xmlrole.c:558:    state->role_none = XML_ROLE_ENTITY_NONE;
xmlrole.c:576:      state->handler = entity9;
xmlrole.c:580:      state->handler = entity8;
xmlrole.c:585:    state->handler = declClose;
xmlrole.c:586:    state->role_none = XML_ROLE_ENTITY_NONE;
xmlrole.c:603:    state->handler = entity9;
xmlrole.c:620:    state->handler = entity10;
xmlrole.c:654:    state->handler = notation1;
xmlrole.c:672:      state->handler = notation3;
xmlrole.c:676:      state->handler = notation2;
xmlrole.c:695:    state->handler = notation4;
xmlrole.c:712:    state->handler = declClose;
xmlrole.c:713:    state->role_none = XML_ROLE_NOTATION_NONE;
xmlrole.c:730:    state->handler = declClose;
xmlrole.c:731:    state->role_none = XML_ROLE_NOTATION_NONE;
xmlrole.c:752:    state->handler = attlist1;
xmlrole.c:773:    state->handler = attlist2;
xmlrole.c:804:          state->handler = attlist8;
xmlrole.c:809:      state->handler = attlist5;
xmlrole.c:814:    state->handler = attlist3;
xmlrole.c:833:    state->handler = attlist4;
xmlrole.c:850:    state->handler = attlist8;
xmlrole.c:853:    state->handler = attlist3;
xmlrole.c:870:    state->handler = attlist6;
xmlrole.c:887:    state->handler = attlist7;
xmlrole.c:904:    state->handler = attlist8;
xmlrole.c:907:    state->handler = attlist6;
xmlrole.c:929:      state->handler = attlist1;
xmlrole.c:936:      state->handler = attlist1;
xmlrole.c:943:      state->handler = attlist9;
xmlrole.c:948:    state->handler = attlist1;
xmlrole.c:965:    state->handler = attlist1;
xmlrole.c:983:    state->handler = element1;
xmlrole.c:1001:      state->handler = declClose;
xmlrole.c:1002:      state->role_none = XML_ROLE_ELEMENT_NONE;
xmlrole.c:1006:      state->handler = declClose;
xmlrole.c:1007:      state->role_none = XML_ROLE_ELEMENT_NONE;
xmlrole.c:1012:    state->handler = element2;
xmlrole.c:1013:    state->level = 1;
xmlrole.c:1034:      state->handler = element3;
xmlrole.c:1039:    state->level = 2;
xmlrole.c:1040:    state->handler = element6;
xmlrole.c:1044:    state->handler = element7;
xmlrole.c:1047:    state->handler = element7;
xmlrole.c:1050:    state->handler = element7;
xmlrole.c:1053:    state->handler = element7;
xmlrole.c:1070:    state->handler = declClose;
xmlrole.c:1071:    state->role_none = XML_ROLE_ELEMENT_NONE;
xmlrole.c:1074:    state->handler = declClose;
xmlrole.c:1075:    state->role_none = XML_ROLE_ELEMENT_NONE;
xmlrole.c:1078:    state->handler = element4;
xmlrole.c:1096:    state->handler = element5;
xmlrole.c:1113:    state->handler = declClose;
xmlrole.c:1114:    state->role_none = XML_ROLE_ELEMENT_NONE;
xmlrole.c:1117:    state->handler = element4;
xmlrole.c:1134:    state->level += 1;
xmlrole.c:1138:    state->handler = element7;
xmlrole.c:1141:    state->handler = element7;
xmlrole.c:1144:    state->handler = element7;
xmlrole.c:1147:    state->handler = element7;
xmlrole.c:1164:    state->level -= 1;
xmlrole.c:1165:    if (state->level == 0) {
xmlrole.c:1166:      state->handler = declClose;
xmlrole.c:1167:      state->role_none = XML_ROLE_ELEMENT_NONE;
xmlrole.c:1171:    state->level -= 1;
xmlrole.c:1172:    if (state->level == 0) {
xmlrole.c:1173:      state->handler = declClose;
xmlrole.c:1174:      state->role_none = XML_ROLE_ELEMENT_NONE;
xmlrole.c:1178:    state->level -= 1;
xmlrole.c:1179:    if (state->level == 0) {
xmlrole.c:1180:      state->handler = declClose;
xmlrole.c:1181:      state->role_none = XML_ROLE_ELEMENT_NONE;
xmlrole.c:1185:    state->level -= 1;
xmlrole.c:1186:    if (state->level == 0) {
xmlrole.c:1187:      state->handler = declClose;
xmlrole.c:1188:      state->role_none = XML_ROLE_ELEMENT_NONE;
xmlrole.c:1192:    state->handler = element6;
xmlrole.c:1195:    state->handler = element6;
xmlrole.c:1215:      state->handler = condSect1;
xmlrole.c:1219:      state->handler = condSect2;
xmlrole.c:1238:    state->handler = externalSubset1;
xmlrole.c:1239:    state->includeLevel += 1;
xmlrole.c:1256:    state->handler = externalSubset1;
xmlrole.c:1273:    return state->role_none;
xmlrole.c:1276:    return state->role_none;
xmlrole.c:1295:  if (!state->documentEntity && tok == XML_TOK_PARAM_ENTITY_REF)
xmlrole.c:1298:  state->handler = error;
xmlrole.c:1305:  state->handler = prolog0;
xmlrole.c:1307:  state->documentEntity = 1;
xmlrole.c:1308:  state->includeLevel = 0;
xmlrole.c:1309:  state->inEntityValue = 0;
xmlrole.c:1318:  state->handler = externalSubset0;
xmlrole.c:1319:  state->documentEntity = 0;
xmlrole.c:1320:  state->includeLevel = 0;
xmlrole.h:21:  XML_ROLE_ERROR = -1,
xmlrole.h:108: (((state)->handler)(state, tok, ptr, end, enc))
Хʥ꡼եxmlrole.oϰפޤ
xmltok.c:42:/* A 2 byte UTF-8 representation splits the characters 11 bits between
xmltok.c:52:/* A 3 byte UTF-8 representation splits the characters 16 bits between
xmltok.c:72:/* Detection of invalid UTF-8 sequences is based on Table 3.1B
xmltok.c:227:#define MINBPC(enc) ((enc)->minBytesPerChar)
xmltok.c:234:  (((struct normal_encoding *)(enc))->type[(unsigned char)*(p)])
xmltok.c:243: (AS_NORMAL_ENCODING(enc)->byteType(enc, p))
xmltok.c:250: (AS_NORMAL_ENCODING(enc)->byteToAscii(enc, p))
xmltok.c:261: (AS_NORMAL_ENCODING(enc)->isName ## n(enc, p))
xmltok.c:263: (AS_NORMAL_ENCODING(enc)->isNmstrt ## n(enc, p))
xmltok.c:265: (AS_NORMAL_ENCODING(enc)->isInvalid ## n(enc, p))
xmltok.c:269: (AS_NORMAL_ENCODING(enc)->isNameMin(enc, p))
xmltok.c:271: (AS_NORMAL_ENCODING(enc)->isNmstrtMin(enc, p))
xmltok.c:279: (AS_NORMAL_ENCODING(enc)->charMatches(enc, p, c))
xmltok.c:317:  if (fromLim - *fromP > toLim - *toP) {
xmltok.c:319:    for (fromLim = *fromP + (toLim - *toP); fromLim > *fromP; fromLim--)
xmltok.c:320:      if (((unsigned char)fromLim[-1] & 0xc0) != 0x80)
xmltok.c:337:    switch (((struct normal_encoding *)enc)->type[(unsigned char)*from]) {
xmltok.c:354:        n -= 0x10000;
xmltok.c:428:      if (toLim - *toP < 2)
xmltok.c:552:      if (toLim -  *toP < 2) { \
xmltok.c:560:      if (toLim -  *toP < 3)  { \
xmltok.c:570:      if (toLim -  *toP < 4) { \
xmltok.c:597:  if (fromLim - *fromP > ((toLim - *toP) << 1) \
xmltok.c:598:      && (GET_HI(fromLim - 2) & 0xF8) == 0xD8) \
xmltok.c:599:    fromLim -= 2; \
xmltok.c:630:  ? ((struct normal_encoding *)(enc))->type[(unsigned char)*(p)] \
xmltok.c:632:#define LITTLE2_BYTE_TO_ASCII(enc, p) ((p)[1] == 0 ? (p)[0] : -1)
xmltok.c:769:  ? ((struct normal_encoding *)(enc))->type[(unsigned char)(p)[1]] \
xmltok.c:771:#define BIG2_BYTE_TO_ASCII(enc, p) ((p)[0] == 0 ? (p)[1] : -1)
xmltok.c:914:      c1 += ASCII_A - ASCII_a;
xmltok.c:916:      c2 += ASCII_A - ASCII_a;
xmltok.c:939:    return -1;
xmltok.c:980:    ptr += enc->minBytesPerChar;
xmltok.c:989:    if (c == -1) {
xmltok.c:1000:        ptr += enc->minBytesPerChar;
xmltok.c:1008:    ptr += enc->minBytesPerChar;
xmltok.c:1014:  ptr += enc->minBytesPerChar;
xmltok.c:1017:    ptr += enc->minBytesPerChar;
xmltok.c:1025:  ptr += enc->minBytesPerChar;
xmltok.c:1027:  for (;; ptr += enc->minBytesPerChar) {
xmltok.c:1041:  *nextTokPtr = ptr + enc->minBytesPerChar;
xmltok.c:1084:  ptr += 5 * enc->minBytesPerChar;
xmltok.c:1085:  end -= 2 * enc->minBytesPerChar;
xmltok.c:1124:      *encoding = encodingFinder(enc, val, ptr - enc->minBytesPerChar);
xmltok.c:1137:  if (XmlNameMatchesAscii(enc, val, ptr - enc->minBytesPerChar, KW_yes)) {
xmltok.c:1141:  else if (XmlNameMatchesAscii(enc, val, ptr - enc->minBytesPerChar, KW_no)) {
xmltok.c:1150:    ptr += enc->minBytesPerChar;
xmltok.c:1164:    return -1;
xmltok.c:1167:      return -1;
xmltok.c:1171:      return -1;
xmltok.c:1224:    charNum -= 0x10000;
xmltok.c:1252:  int c = uenc->convert(uenc->userData, p);
xmltok.c:1262:  int c = uenc->convert(uenc->userData, p);
xmltok.c:1272:  int c = uenc->convert(uenc->userData, p);
xmltok.c:1288:    utf8 = uenc->utf8[(unsigned char)**fromP];
xmltok.c:1291:      int c = uenc->convert(uenc->userData, *fromP);
xmltok.c:1293:      if (n > toLim - *toP)
xmltok.c:1296:      *fromP += (AS_NORMAL_ENCODING(enc)->type[(unsigned char)**fromP]
xmltok.c:1297:                 - (BT_LEAD2 - 2));
xmltok.c:1300:      if (n > toLim - *toP)
xmltok.c:1306:    } while (--n != 0);
xmltok.c:1317:    unsigned short c = uenc->utf16[(unsigned char)**fromP];
xmltok.c:1320:          uenc->convert(uenc->userData, *fromP);
xmltok.c:1321:      *fromP += (AS_NORMAL_ENCODING(enc)->type[(unsigned char)**fromP]
xmltok.c:1322:                 - (BT_LEAD2 - 2));
xmltok.c:1347:    if (c == -1) {
xmltok.c:1348:      e->normal.type[i] = BT_MALFORM;
xmltok.c:1350:      e->utf16[i] = 0xFFFF;
xmltok.c:1351:      e->utf8[i][0] = 1;
xmltok.c:1352:      e->utf8[i][1] = 0;
xmltok.c:1355:      if (c < -4)
xmltok.c:1357:      e->normal.type[i] = (unsigned char)(BT_LEAD2 - (c + 2));
xmltok.c:1358:      e->utf8[i][0] = 0;
xmltok.c:1359:      e->utf16[i] = 0;
xmltok.c:1366:      e->normal.type[i] = latin1_encoding.type[c];
xmltok.c:1367:      e->utf8[i][0] = 1;
xmltok.c:1368:      e->utf8[i][1] = (char)c;
xmltok.c:1369:      e->utf16[i] = (unsigned short)(c == 0 ? 0xFFFF : c);
xmltok.c:1372:      e->normal.type[i] = BT_NONXML;
xmltok.c:1374:      e->utf16[i] = 0xFFFF;
xmltok.c:1375:      e->utf8[i][0] = 1;
xmltok.c:1376:      e->utf8[i][1] = 0;
xmltok.c:1382:        e->normal.type[i] = BT_NMSTRT;
xmltok.c:1384:        e->normal.type[i] = BT_NAME;
xmltok.c:1386:        e->normal.type[i] = BT_OTHER;
xmltok.c:1387:      e->utf8[i][0] = (char)XmlUtf8Encode(c, e->utf8[i] + 1);
xmltok.c:1388:      e->utf16[i] = (unsigned short)c;
xmltok.c:1391:  e->userData = userData;
xmltok.c:1392:  e->convert = convert;
xmltok.c:1394:    e->normal.isName2 = unknown_isName;
xmltok.c:1395:    e->normal.isName3 = unknown_isName;
xmltok.c:1396:    e->normal.isName4 = unknown_isName;
xmltok.c:1397:    e->normal.isNmstrt2 = unknown_isNmstrt;
xmltok.c:1398:    e->normal.isNmstrt3 = unknown_isNmstrt;
xmltok.c:1399:    e->normal.isNmstrt4 = unknown_isNmstrt;
xmltok.c:1400:    e->normal.isInvalid2 = unknown_isInvalid;
xmltok.c:1401:    e->normal.isInvalid3 = unknown_isInvalid;
xmltok.c:1402:    e->normal.isInvalid4 = unknown_isInvalid;
xmltok.c:1404:  e->normal.enc.utf8Convert = unknown_toUtf8;
xmltok.c:1405:  e->normal.enc.utf16Convert = unknown_toUtf16;
xmltok.c:1406:  return &(e->normal.enc);
xmltok.c:1412:  UNKNOWN_ENC = -1,
xmltok.c:1470:#define INIT_ENC_INDEX(enc) ((int)(enc)->initEnc.isUtf16)
xmltok.c:1471:#define SET_INIT_ENC_INDEX(enc, i) ((enc)->initEnc.isUtf16 = (char)i)
xmltok.c:1493:  encPtr = enc->encPtr;
xmltok.c:1495:    /* only a single byte available for auto-detection */
xmltok.c:1497:    /* a well-formed document entity must have more than one byte */
xmltok.c:1502:    /* if UTF-16 was externally specified, then we need at least 2 bytes */
xmltok.c:1512:    case 0xEF: /* possibly first byte of UTF-8 BOM */
xmltok.c:1547:      /* Maybe a UTF-8 BOM (EF BB BF) */
xmltok.c:1549:         of ISO-8859-1 or some flavour of UTF-16
xmltok.c:1572:           way this can fail to be big-endian UTF-16 if it it's an
xmltok.c:1574:           UTF-16LE.
xmltok.c:1583:            - parsing an external entity
xmltok.c:1584:            - second byte is 0
xmltok.c:1585:            - no externally specified encoding
xmltok.c:1586:            - no encoding declaration
xmltok.c:1587:           by assuming UTF-16LE.  But we don't, because this would mean when
xmltok.c:1628:    ((struct normal_encoding *)enc)->type[ASCII_COLON] = BT_COLON;
xmltok.h:13:#define XML_TOK_TRAILING_RSQB -5 /* ] or ]] at the end of the scan; might be
xmltok.h:18:#define XML_TOK_NONE -4          /* The string to be scanned is empty */
xmltok.h:19:#define XML_TOK_TRAILING_CR -3   /* A CR at the end of the scan;
xmltok.h:21:#define XML_TOK_PARTIAL_CHAR -2  /* only part of a multibyte sequence */
xmltok.h:22:#define XML_TOK_PARTIAL -1       /* only part of a token */
xmltok.h:199:  (((enc)->scanners[state])(enc, ptr, end, nextTokPtr))
xmltok.h:217:/* This is used for performing a 2nd-level tokenization on the content
xmltok.h:221:  (((enc)->literalScanners[literalType])(enc, ptr, end, nextTokPtr))
xmltok.h:229:#define XmlSameName(enc, ptr1, ptr2) (((enc)->sameName)(enc, ptr1, ptr2))
xmltok.h:232:  (((enc)->nameMatchesAscii)(enc, ptr1, end1, ptr2))
xmltok.h:235:  (((enc)->nameLength)(enc, ptr))
xmltok.h:238:  (((enc)->skipS)(enc, ptr))
xmltok.h:241:  (((enc)->getAtts)(enc, ptr, attsMax, atts))
xmltok.h:244:  (((enc)->charRefNumber)(enc, ptr))
xmltok.h:247:  (((enc)->predefinedEntityName)(enc, ptr, end))
xmltok.h:250:  (((enc)->updatePosition)(enc, ptr, end, pos))
xmltok.h:253:  (((enc)->isPublicId)(enc, ptr, end, badPtr))
xmltok.h:256:  (((enc)->utf8Convert)(enc, fromP, fromLim, toP, toLim))
xmltok.h:259:  (((enc)->utf16Convert)(enc, fromP, fromLim, toP, toLim))
Хʥ꡼եxmltok.oϰפޤ
xmltok_impl.c:11:      if (end - ptr < n) \
xmltok_impl.c:32:     if (end - ptr < n) \
xmltok_impl.c:60:     if (end - ptr < n) \
xmltok_impl.c:87:/* ptr points to character following "<!-" */
xmltok_impl.c:180:  if (end - ptr != MINBPC(enc)*3)
xmltok_impl.c:289:  if (end - ptr < 6 * MINBPC(enc))
xmltok_impl.c:308:    size_t n = end - ptr;
xmltok_impl.c:309:    if (n & (MINBPC(enc) - 1)) {
xmltok_impl.c:310:      n &= ~(MINBPC(enc) - 1);
xmltok_impl.c:327:      ptr -= MINBPC(enc);
xmltok_impl.c:352:      if (end - ptr < n || IS_INVALID_CHAR(enc, ptr, n)) { \
xmltok_impl.c:411:         since end-tag must match exactly */
xmltok_impl.c:715:  /* we have a start-tag */
xmltok_impl.c:788:    size_t n = end - ptr;
xmltok_impl.c:789:    if (n & (MINBPC(enc) - 1)) {
xmltok_impl.c:790:      n &= ~(MINBPC(enc) - 1);
xmltok_impl.c:822:      ptr -= MINBPC(enc);
xmltok_impl.c:836:      if (end - ptr < n || IS_INVALID_CHAR(enc, ptr, n)) { \
xmltok_impl.c:933:  return -XML_TOK_POUND_NAME;
xmltok_impl.c:951:        return -XML_TOK_LITERAL;
xmltok_impl.c:976:    size_t n = end - ptr;
xmltok_impl.c:977:    if (n & (MINBPC(enc) - 1)) {
xmltok_impl.c:978:      n &= ~(MINBPC(enc) - 1);
xmltok_impl.c:1005:        *nextTokPtr = ptr - MINBPC(enc);
xmltok_impl.c:1015:      return -XML_TOK_PROLOG_S;
xmltok_impl.c:1049:      return -XML_TOK_CLOSE_BRACKET;
xmltok_impl.c:1066:      return -XML_TOK_CLOSE_PAREN;
xmltok_impl.c:1095:    if (end - ptr < n) \
xmltok_impl.c:1196:  return -tok;
xmltok_impl.c:1320:    size_t n = end - ptr;
xmltok_impl.c:1321:    if (n & (MINBPC(enc) - 1)) {
xmltok_impl.c:1322:      n &= ~(MINBPC(enc) - 1);
xmltok_impl.c:1353:          --level;
xmltok_impl.c:1372:  end -= MINBPC(enc);
xmltok_impl.c:1422:/* This must only be called for a well-formed start-tag or empty
xmltok_impl.c:1447:    case BT_LEAD ## n: START_NAME ptr += (n - MINBPC(enc)); break;
xmltok_impl.c:1535:        result |= (c - ASCII_0);
xmltok_impl.c:1540:        result += 10 + (c - ASCII_A);
xmltok_impl.c:1545:        result += 10 + (c - ASCII_a);
xmltok_impl.c:1549:        return -1;
xmltok_impl.c:1556:      result += (c - ASCII_0);
xmltok_impl.c:1558:        return -1;
xmltok_impl.c:1568:  switch ((end - ptr)/MINBPC(enc)) {
xmltok_impl.c:1717:      return ptr - start;
xmltok_impl.c:1753:      pos->columnNumber = (unsigned)-1;
xmltok_impl.c:1754:      pos->lineNumber++;
xmltok_impl.c:1758:      pos->lineNumber++;
xmltok_impl.c:1762:      pos->columnNumber = (unsigned)-1;
xmltok_impl.c:1768:    pos->columnNumber++;
xmltok_ns.c:56:  p->initEnc.scanners[XML_PROLOG_STATE] = NS(initScanProlog);
xmltok_ns.c:57:  p->initEnc.scanners[XML_CONTENT_STATE] = NS(initScanContent);
xmltok_ns.c:58:  p->initEnc.updatePosition = initUpdatePosition;
xmltok_ns.c:59:  p->encPtr = encPtr;
xmltok_ns.c:60:  *encPtr = &(p->initEnc);
xmltok_ns.c:71:  XmlUtf8Convert(enc, &ptr, end, &p, p + ENCODING_MAX - 1);
xmltok_ns.c:75:  if (streqci(buf, KW_UTF_16) && enc->minBytesPerChar == 2)
