[Expat-checkins] expat/lib xmlparse.c,1.89,1.90
Karl Waclawek
kwaclaw@users.sourceforge.net
Tue, 01 Oct 2002 09:58:56 -0700
Update of /cvsroot/expat/expat/lib
In directory usw-pr-cvs1:/tmp/cvs-serv2397
Modified Files:
xmlparse.c
Log Message:
Applied fix for bug #616863.
Index: xmlparse.c
===================================================================
RCS file: /cvsroot/expat/expat/lib/xmlparse.c,v
retrieving revision 1.89
retrieving revision 1.90
diff -u -d -r1.89 -r1.90
--- xmlparse.c 30 Sep 2002 12:11:26 -0000 1.89
+++ xmlparse.c 1 Oct 2002 16:58:54 -0000 1.90
@@ -109,7 +109,7 @@
size_t size;
size_t used;
size_t usedLim;
- XML_Memory_Handling_Suite *mem;
+ const XML_Memory_Handling_Suite *mem;
} HASH_TABLE;
typedef struct {
@@ -209,7 +209,7 @@
const XML_Char *end;
XML_Char *ptr;
[...1589 lines suppressed...]
- const XML_Char *name = poolStoreString(&dtd.pool, enc, ptr, end);
+ DTD * const dtd = _dtd; /* save one level of indirection */
+ const XML_Char *name = poolStoreString(&dtd->pool, enc, ptr, end);
ELEMENT_TYPE *ret;
if (!name)
return NULL;
- ret = (ELEMENT_TYPE *) lookup(&dtd.elementTypes, name, sizeof(ELEMENT_TYPE));
+ ret = (ELEMENT_TYPE *) lookup(&dtd->elementTypes, name, sizeof(ELEMENT_TYPE));
if (!ret)
return NULL;
if (ret->name != name)
- poolDiscard(&dtd.pool);
+ poolDiscard(&dtd->pool);
else {
- poolFinish(&dtd.pool);
+ poolFinish(&dtd->pool);
if (!setElementTypePrefix(parser, ret))
return NULL;
}