Setting up the framework for structured error reporting, touches a lot of
* HTMLparser.c c14n.c catalog.c error.c globals.c parser.c
parserInternals.c relaxng.c valid.c xinclude.c xmlIO.c xmlregexp.c
xmlschemas.c xpath.c xpointer.c include/libxml/globals.h
include/libxml/parser.h include/libxml/valid.h
include/libxml/xmlerror.h: Setting up the framework for structured
error reporting, touches a lot of modules, but little code now
the error handling trail has been cleaned up.
Daniel
diff --git a/xmlIO.c b/xmlIO.c
index 6642a59..41a7d9c 100644
--- a/xmlIO.c
+++ b/xmlIO.c
@@ -350,6 +350,7 @@
static void
xmlLoaderErr(xmlParserCtxtPtr ctxt, const char *msg, const char *filename)
{
+ xmlStructuredErrorFunc schannel = NULL;
xmlGenericErrorFunc channel = NULL;
void *data = NULL;
xmlErrorLevel level = XML_ERR_ERROR;
@@ -362,9 +363,10 @@
channel = ctxt->sax->warning;
level = XML_ERR_WARNING;
}
+ schannel = ctxt->sax->serror;
data = ctxt->userData;
}
- __xmlRaiseError(channel, data, ctxt, NULL, XML_FROM_IO,
+ __xmlRaiseError(schannel, channel, data, ctxt, NULL, XML_FROM_IO,
XML_IO_LOAD_ERROR, level, NULL, 0,
filename, NULL, NULL, 0, 0,
msg, filename);