msxml3: Added ISAXContentHandler_startElement event.
This commit is contained in:
parent
c58b24b374
commit
965a2ea5dd
|
@ -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;
|
||||
|
||||
|
|
Loading…
Reference in New Issue