On Tue, Nov 15, 2005 at 08:31:44PM +1100, Michael Day wrote:
> 
> Hi Daniel,
> 
> >   No because the code parsing it in xmlParseXMLDecl() does not fire any
> > SAX event, so any proof of having gone though that path can only be noticed
> > by the side effects of that routine. It sets ctxt->version, so if you
> > don't have ctxt->version you can be sure you didn't had an XMLDecl, but
> > unfortunately I documents are alway created with a version string of 1.0
> > if no XMLDecl is found, see line 9081 of parser.c
> 
> If I submitted a patch to add a hasXmlDeclaration field to the
> xmlParserCtxt struct would you consider merging it? :)

  No because there is already too much cruft in it. But adding a special 
value to ctxt->standalone (-2) indicating that the XMLDecl was read but
the standlone information was not present would be okay.

> (It would also be possible to add a SAX callback to be called when the XML
> declaration is parsed, but this seems like overkill for such a small thing
> and would require changing the SAX struct which is a bad thing).

  Don't even think about that. SAX block tend to be allocated by user code
changing the size of that data structure is a definite no-no.

Daniel

-- 
Daniel Veillard      | Red Hat http://redhat.com/
[EMAIL PROTECTED]  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
[email protected]
http://mail.gnome.org/mailman/listinfo/xml

Reply via email to