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
diff --git a/ChangeLog b/ChangeLog
index 6f1261f..003a456 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+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
diff --git a/python/libxml.c b/python/libxml.c
index 095efbd..a943530 100644
--- a/python/libxml.c
+++ b/python/libxml.c
@@ -2545,6 +2545,36 @@
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 @@
{(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}
};
diff --git a/python/libxml.py b/python/libxml.py
index 8ffa383..ba74736 100644
--- a/python/libxml.py
+++ b/python/libxml.py
@@ -511,6 +511,11 @@
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))