diff options
-rw-r--r-- | src/lxml/includes/xmlparser.pxd | 1 | ||||
-rw-r--r-- | src/lxml/parser.pxi | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/src/lxml/includes/xmlparser.pxd b/src/lxml/includes/xmlparser.pxd index 74fe7586..187b079f 100644 --- a/src/lxml/includes/xmlparser.pxd +++ b/src/lxml/includes/xmlparser.pxd @@ -56,6 +56,7 @@ cdef extern from "libxml/tree.h": const_xmlChar* base const_xmlChar* cur const_xmlChar* end + const_char *filename ctypedef struct xmlParserInputBuffer: void* context diff --git a/src/lxml/parser.pxi b/src/lxml/parser.pxi index 9431b21e..0c0a8b20 100644 --- a/src/lxml/parser.pxi +++ b/src/lxml/parser.pxi @@ -447,6 +447,8 @@ cdef xmlparser.xmlParserInput* _local_resolver(const_char* c_url, const_char* c_ data = doc_ref._data_bytes c_input = xmlparser.xmlNewInputStream(c_context) if c_input is not NULL: + if doc_ref._filename: + c_input.filename = <char *>tree.xmlStrdup(_xcstr(doc_ref._filename)) c_input.base = _xcstr(data) c_input.length = python.PyBytes_GET_SIZE(data) c_input.cur = c_input.base |