Re: [xml] runtest mystery bug: name2.xml error case regression test
- From: Petr Sumbera <petr sumbera oracle com>
- To: xml gnome org
- Subject: Re: [xml] runtest mystery bug: name2.xml error case regression test
- Date: Mon, 05 Nov 2012 17:29:37 +0100
On 10/31/12 04:59 PM, Petr Sumbera wrote:
On 10/30/12 03:53 PM, Petr Sumbera wrote:
I'm not sure I can follow this thread. I'm seeing the same problem with
version 2.9.0 with 64bit libxml2 on Solaris (32 bit version works well):
## Error cases regression tests
Error for ./test/errors/name2.xml failed
File ./test/errors/name2.xml generated an error
## Error cases stream regression tests
Not sure what that can mean or how can I debug it down.
Well. It seems it's really problem of libxml2 not reporting same error
messages when realloc() returns different pointer than it was given
against the situation where it returns the same pointer.
file: parser.c; xmlParseStartTag2()
attname = xmlParseAttribute2(ctxt, prefix, localname,
&aprefix, &attvalue, &len, &alloc);
if (ctxt->input->base != base) {
if ((attvalue != NULL) && (alloc != 0))
xmlFree(attvalue);
attvalue = NULL;
goto base_changed;
}
After returning from xmlParseAttribute2() ctxt->wellFormed is correctly
set to 0.
And with 32 bit libxml2 I'm getting ctxt->input->base different than
base. Which means realloc() returned different pointer than it was
given. And due the fact that "wellFormed" is zero no other error message
is given.
But with 64 bit libxml2 I have ctxt->input->base the same as base
(realloc() returned the same pointer) and thus it goes later to 'failed'
label where extra error output is give:
./test/errors/name2.xml:2: parser error : attributes construct error
and later processing reports:
./test/errors/name2.xml:2: parser error : Couldn't find end of Start Tag
foo line 1
It would be nice to have consistent error messages for testing. Any
comments?
Thanks,
Petr
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]