From 5f704afe98c584b7188aa0e4fbc9d9e68e0d7b1b Mon Sep 17 00:00:00 2001 From: Daniel Veillard Date: Wed, 5 Mar 2003 10:01:43 +0000 Subject: [PATCH] made powten array static it should not be exported fix bug #107361 by * xmlschemastype.c: made powten array static it should not be exported * HTMLparser.c: fix bug #107361 by reusing the code from the XML parser function. * testHTML.c: get rid of valgrind messages on the HTML SAX tests Daniel --- ChangeLog | 7 +++++++ HTMLparser.c | 13 ++++++++++++- testHTML.c | 3 ++- xmlschemastypes.c | 2 +- 4 files changed, 22 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index c52b251c..3b728d8e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Wed Mar 5 10:57:09 CET 2003 Daniel Veillard + + * xmlschemastype.c: made powten array static it should not be exported + * HTMLparser.c: fix bug #107361 by reusing the code from the XML + parser function. + * testHTML.c: get rid of valgrind messages on the HTML SAX tests + Fri Feb 28 00:23:00 CET 2003 Daniel Veillard * tree.c: fixed a node dump crash on attributes diff --git a/HTMLparser.c b/HTMLparser.c index 75e9229f..38a442c2 100644 --- a/HTMLparser.c +++ b/HTMLparser.c @@ -5231,16 +5231,27 @@ htmlCreatePushParserCtxt(htmlSAXHandlerPtr sax, void *user_data, if (filename == NULL) inputStream->filename = NULL; else - inputStream->filename = xmlMemStrdup(filename); + inputStream->filename = (char *) + xmlCanonicPath((const xmlChar *) filename); inputStream->buf = buf; inputStream->base = inputStream->buf->buffer->content; inputStream->cur = inputStream->buf->buffer->content; + inputStream->end = + &inputStream->buf->buffer->content[inputStream->buf->buffer->use]; inputPush(ctxt, inputStream); if ((size > 0) && (chunk != NULL) && (ctxt->input != NULL) && (ctxt->input->buf != NULL)) { + int base = ctxt->input->base - ctxt->input->buf->buffer->content; + int cur = ctxt->input->cur - ctxt->input->base; + xmlParserInputBufferPush(ctxt->input->buf, size, chunk); + + ctxt->input->base = ctxt->input->buf->buffer->content + base; + ctxt->input->cur = ctxt->input->base + cur; + ctxt->input->end = + &ctxt->input->buf->buffer->content[ctxt->input->buf->buffer->use]; #ifdef DEBUG_PUSH xmlGenericError(xmlGenericErrorContext, "HPP: pushed %d\n", size); #endif diff --git a/testHTML.c b/testHTML.c index dbfccc39..3709afef 100644 --- a/testHTML.c +++ b/testHTML.c @@ -375,7 +375,8 @@ startElementDebug(void *ctx ATTRIBUTE_UNUSED, const xmlChar *name, const xmlChar while ((attlen = strlen((char*)att)) > 0) { outlen = sizeof output - 1; htmlEncodeEntities(output, &outlen, att, &attlen, '\''); - fprintf(stdout, "%.*s", outlen, output); + output[outlen] = 0; + fprintf(stdout, "%s", output); att += attlen; } fprintf(stdout, "'"); diff --git a/xmlschemastypes.c b/xmlschemastypes.c index 051af8df..bda73360 100644 --- a/xmlschemastypes.c +++ b/xmlschemastypes.c @@ -85,7 +85,7 @@ typedef enum { XML_SCHEMAS_UBYTE } xmlSchemaValType; -unsigned long powten[10] = { +static unsigned long powten[10] = { 1, 10, 100, 1000, 10000, 100000, 1000000, 10000000L, 100000000L, 1000000000L };