[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: [xml] xmllib2-2.3.4 compiler warnings on QNX
- From: Daniel Veillard <veillard redhat com>
- To: Peter Jacobi <pj walter-graphtek com>
- Cc: xml gnome org
- Subject: Re: [xml] xmllib2-2.3.4 compiler warnings on QNX
- Date: Fri, 23 Mar 2001 05:56:32 -0500
On Fri, Mar 23, 2001 at 11:29:02AM +0100, Peter Jacobi wrote:
> Hi Daniel, All,
>
> > if this is the use of COPY_BUF macro it seems, I don't see how
> > the compiler can detect an unreachable code in
> >
> > #define COPY_BUF(l,b,i,v) \
> > if (l == 1) b[i++] = (xmlChar) v; \
> > else i += xmlCopyChar(l,&b[i],v)
> >
> > int val = xmlParseStringCharRef(ctxt, &str);
> > if (val != 0) {
> > COPY_BUF(0,buffer,nbchars,val);
> > }
> >
> > And I would appreciate insight on who's wrong there...
>
> Calling COPY_BUF with first parameter (l) equal 0 will never process the
> b[i++] = (xmlChar) v part.
Dohh, right ..
Question is, would calling xmlCopyChar() directly be any better ?
Maybe ...
> I'm looking at a old sources (2.2.11), but I assume the documentation for
> xmlCopyChar is out of sync, as the first parameter is referred to as
> @len: pointer to the length of the char read (or zero)
hum, not really. In this case there was nothing read or at least
not as a char. Having len == 0 indicates we don't know what's the size
of the UTF8 serialization of this character.
> On a related topic, the len parameter is hardly used in xmlCopyChar and
> can probably be eliminated, along with the code branch computing len
> when the parameter is zero:
there is 2 things:
- xmlCopyChar is public, it is exported from parserInternals.h
so we can't change its signature now
- I tend to agree that the len > 1 case don't make an useful
use of the information. Would your patch still improve things
considering we still pass the len parameter ? I.e. is it
faster or cleaner ?
Seems I have troubles making decisions today ...
Daniel
--
Daniel Veillard | Red Hat Network http://redhat.com/products/network/
veillard redhat com | libxml Gnome XML XSLT toolkit http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]