Re: [xml] ctxt->sax->fatalError never beging used
- From: Daniel Veillard <veillard redhat com>
- To: Petr Pajas <pajas ufal ms mff cuni cz>
- Cc: xml gnome org
- Subject: Re: [xml] ctxt->sax->fatalError never beging used
- Date: Fri, 28 Jul 2006 05:23:20 -0400
On Fri, Jul 28, 2006 at 11:13:18AM +0200, Petr Pajas wrote:
Hi Daniel, All,
I wonder why the sax fatalError callback is never called even for fatal
errors. I would assume the corresponding code in __xmlRaiseError to look
something like:
if (level == XML_ERR_WARNING)
channel = ctxt->sax->warning;
else if (level == XML_ERR_FATAL)
channel = ctxt->sax->fatalError;
else
channel = ctxt->sax->error;
Hum, if ctxt->sax->fatalError is NULL one would need to fallback to
ctxt->sax->error.
while it currently only looks like:
if (level == XML_ERR_WARNING)
channel = ctxt->sax->warning;
else
channel = ctxt->sax->error;
Is there an intention in this?
I guess it's historical, we never called it, all errors from the parser
are fatal, only later on non-fatal errors were added (e.g. namespace
errors), and it was kind of too late.
I'm asking because we map these callbacks to Perl-level SAX callbacks in the
Perl XML::LibXML SAX binding. I need fatalError Perl callback to be called on
a fatal error in order to be consistent with other SAX-based parser
interfaces in Perl.
Best is to register a structured error handler in the SAX block (assuming
SAXv2 see the serror callback) so you get all informations.
Daniel
--
Daniel Veillard | Red Hat http://redhat.com/
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]