Commit 965a2ea5 authored by Piotr Caban's avatar Piotr Caban Committed by Alexandre Julliard

msxml3: Added ISAXContentHandler_startElement event.

parent c58b24b3
......@@ -120,6 +120,51 @@ static void libxmlEndDocument(void *ctx)
}
}
static void libxmlStartElementNS(
void *ctx,
const xmlChar *localname,
const xmlChar *prefix,
const xmlChar *URI,
int nb_namespaces,
const xmlChar **namespaces,
int nb_attributes,
int nb_defaulted,
const xmlChar **attributes)
{
BSTR NamespaceUri, LocalName, QName;
saxlocator *This = ctx;
HRESULT hr;
FIXME("Arguments processing not yet implemented.\n");
This->lastColumn = xmlSAX2GetColumnNumber(This->pParserCtxt)+1;
This->lastLine = xmlSAX2GetLineNumber(This->pParserCtxt);
if(This->saxreader->contentHandler)
{
NamespaceUri = bstr_from_xmlChar(URI);
LocalName = bstr_from_xmlChar(localname);
QName = bstr_from_xmlChar(localname);
hr = ISAXContentHandler_startElement(
This->saxreader->contentHandler,
NamespaceUri, SysStringLen(NamespaceUri),
LocalName, SysStringLen(LocalName),
QName, SysStringLen(QName),
NULL);
SysFreeString(NamespaceUri);
SysFreeString(LocalName);
SysFreeString(QName);
if(FAILED(hr))
{
xmlStopParser(This->pParserCtxt);
This->ret = hr;
}
}
}
/*** ISAXLocator interface ***/
/*** IUnknown methods ***/
static HRESULT WINAPI isaxlocator_QueryInterface(ISAXLocator* iface, REFIID riid, void **ppvObject)
......@@ -920,6 +965,7 @@ HRESULT SAXXMLReader_create(IUnknown *pUnkOuter, LPVOID *ppObj)
reader->sax.initialized = XML_SAX2_MAGIC;
reader->sax.startDocument = libxmlStartDocument;
reader->sax.endDocument = libxmlEndDocument;
reader->sax.startElementNs = libxmlStartElementNS;
*ppObj = &reader->lpVtbl;
......
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