Commit 5439624b authored by Daniel Veillard's avatar Daniel Veillard
Browse files

applied patch from Brent M Hendricks adding binding for xmlCatalogAddLocal

* python/libxml.c python/libxml.py: applied patch from
  Brent M Hendricks adding binding for xmlCatalogAddLocal
Daniel
parent 45269b8b
Wed Apr 23 09:35:12 CEST 2003 Daniel Veillard <daniel@veillard.com>
* python/libxml.c python/libxml.py: applied patch from
Brent M Hendricks adding binding for xmlCatalogAddLocal
Tue Apr 22 15:18:01 CEST 2003 Daniel Veillard <daniel@veillard.com>
 
* HTMLparser.c: tried to fix #98879 again in a more solid
......
......@@ -2545,6 +2545,36 @@ libxml_xmlNewNode(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)
return (py_retval);
}
/************************************************************************
* *
* Local Catalog stuff *
* *
************************************************************************/
static PyObject *
libxml_addLocalCatalog(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)
{
xmlChar *URL;
xmlParserCtxtPtr ctxt;
PyObject *pyobj_ctxt;
if (!PyArg_ParseTuple(args, (char *)"Os:addLocalCatalog", &pyobj_ctxt, &URL))
return(NULL);
ctxt = (xmlParserCtxtPtr) PyparserCtxt_Get(pyobj_ctxt);
if (URL != NULL) {
ctxt->catalogs = xmlCatalogAddLocal(ctxt->catalogs, URL);
}
#ifdef DEBUG
printf("LocalCatalog: %s\n", URL);
#endif
Py_INCREF(Py_None);
return (Py_None);
}
/************************************************************************
* *
* The registration stuff *
......@@ -2574,6 +2604,7 @@ static PyMethodDef libxmlMethods[] = {
{(char *)"xmlTextReaderSetErrorHandler", libxml_xmlTextReaderSetErrorHandler, METH_VARARGS, NULL },
{(char *)"xmlTextReaderGetErrorHandler", libxml_xmlTextReaderGetErrorHandler, METH_VARARGS, NULL },
{(char *)"xmlFreeTextReader", libxml_xmlFreeTextReader, METH_VARARGS, NULL },
{(char *)"addLocalCatalog", libxml_addLocalCatalog, METH_VARARGS, NULL },
{NULL, NULL, 0, NULL}
};
......
......@@ -511,6 +511,11 @@ class parserCtxtCore:
or (None,None)."""
return libxml2mod.xmlParserCtxtGetErrorHandler(self._o)
def addLocalCatalog(self, uri):
"""Register a local catalog with the parser"""
return libxml2mod.addLocalCatalog(self._o, uri)
def _xmlTextReaderErrorFunc((f,arg),msg,severity,locator):
"""Intermediate callback to wrap the locator"""
return f(arg,msg,severity,xmlTextReaderLocator(locator))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment