52static const WCHAR PropertySelectionLanguageW[] = {
'S',
'e',
'l',
'e',
'c',
't',
'i',
'o',
'n',
'L',
'a',
'n',
'g',
'u',
'a',
'g',
'e',0};
53static const WCHAR PropertySelectionNamespacesW[] = {
'S',
'e',
'l',
'e',
'c',
't',
'i',
'o',
'n',
'N',
'a',
'm',
'e',
's',
'p',
'a',
'c',
'e',
's',0};
54static const WCHAR PropertyProhibitDTDW[] = {
'P',
'r',
'o',
'h',
'i',
'b',
'i',
't',
'D',
'T',
'D',0};
57static const WCHAR PropValueXSLPatternW[] = {
'X',
'S',
'L',
'P',
'a',
't',
't',
'e',
'r',
'n',0};
58static const WCHAR PropertyResolveExternalsW[] = {
'R',
'e',
's',
'o',
'l',
'v',
'e',
'E',
'x',
't',
'e',
'r',
'n',
'a',
'l',
's',0};
59static const WCHAR PropertyAllowXsltScriptW[] = {
'A',
'l',
'l',
'o',
'w',
'X',
's',
'l',
't',
'S',
'c',
'r',
'i',
'p',
't',0};
60static const WCHAR PropertyAllowDocumentFunctionW[] = {
'A',
'l',
'l',
'o',
'w',
'D',
'o',
'c',
'u',
'm',
'e',
'n',
't',
'F',
'u',
'n',
'c',
't',
'i',
'o',
'n',0};
61static const WCHAR PropertyNormalizeAttributeValuesW[] = {
'N',
'o',
'r',
'm',
'a',
'l',
'i',
'z',
'e',
'A',
't',
't',
'r',
'i',
'b',
'u',
't',
'e',
'V',
'a',
'l',
'u',
'e',
's',0};
157 if (disp) IDispatch_AddRef(disp);
163 if (doc->
events[eid]) IDispatch_Release(doc->
events[eid]);
217 return doc->_private;
241 TRACE(
"(%p)\n", ctxt);
245 xmlXPathRegisterNs(ctxt,
ns->
prefix,
ns->href);
265 priv =
malloc(
sizeof(*priv));
281 properties->
refs = 1;
315 IXMLDOMSchemaCollection2_AddRef(pcopy->
schemaCache);
332 pcopy->
uri = properties->
uri;
334 IUri_AddRef(pcopy->
uri);
344 if (!properties)
return NULL;
347 TRACE(
"%p, %ld.\n", properties,
ref);
355 if (!properties)
return;
359 TRACE(
"%p, %ld.\n", properties,
ref);
362 WARN(
"negative refcount, expect troubles\n");
367 IXMLDOMSchemaCollection2_Release(properties->
schemaCache);
371 IUri_Release(properties->
uri);
378 if (
This->namespaces)
380 IXMLDOMSchemaCollection2_Release(
This->namespaces);
389 if (doc->standalone != -1) xmlAddPrevSibling( doc->children,
node );
395 static const xmlChar xmlA[] =
"xml";
396 xmlNodePtr
node, first_child;
402 first_child = doc->children;
403 if (first_child && first_child->type == XML_PI_NODE &&
xmlStrEqual(first_child->name, xmlA))
406 xmlUnlinkNode(
node );
425 return ((properties && properties->
preserving == VARIANT_TRUE) ||
426 xmlNodeGetSpacePreserve(
node) == 1);
440 xmlParserCtxtPtr ctxt;
443 ctxt = (xmlParserCtxtPtr)
ctx;
462 if (!
This->properties->preserving &&
465 (!ctxt->node->last ||
466 ((ctxt->node->last && (
cur ==
'<' || ctxt->node->last->type != XML_TEXT_NODE))
470 if (ctxt->node->last)
472 else if (ctxt->node->type != XML_DOCUMENT_NODE)
505 xmlDocPtr doc =
NULL;
506 xmlParserCtxtPtr pctx;
507 static xmlSAXHandler sax_handler = {
545 ERR(
"Failed to create parser context\n");
549 if (pctx->sax)
xmlFree(pctx->sax);
550 pctx->sax = &sax_handler;
551 pctx->_private =
This;
559 if (pctx->wellFormed)
565 xmlFreeDoc(pctx->myDoc);
569 ctx_encoding = (
char *)pctx->encoding;
570 pctx->encoding =
NULL;
575 if (doc && doc->standalone != -1)
584 sprintf(
buff,
"version=\"%s\"", doc->version ? (
char*)doc->version :
"1.0");
585 xmlNodeAddContent(
node, xmlbuff );
590 xmlNodeAddContent(
node, xmlbuff );
593 if (doc->standalone != -2)
595 sprintf(
buff,
" standalone=\"%s\"", doc->standalone == 0 ?
"no" :
"yes");
596 xmlNodeAddContent(
node, xmlbuff );
615 TRACE(
"%p, refcount %ld.\n", doc,
ref);
629 TRACE(
"%p, refcount %ld.\n", doc,
ref);
632 WARN(
"negative refcount, expect troubles\n");
637 TRACE(
"freeing docptr %p\n", doc);
641 xmlFreeNode(
orphan->node );
692 return This->node.node->doc;
713 This->node.node = (xmlNodePtr) xml;
759 return IXMLDOMDocument3_QueryInterface(&
This->IXMLDOMDocument3_iface,
riid, ppvObj);
766 return IXMLDOMDocument3_AddRef(&
This->IXMLDOMDocument3_iface);
773 return IXMLDOMDocument3_Release(&
This->IXMLDOMDocument3_iface);
816 hr = IStream_Write(hstream,
buf,
read, &written);
821 ERR(
"failed to copy stream, hr %#lx.\n",
hr);
822 IStream_Release(hstream);
829 IStream_Release(hstream);
838 IStream_Release(hstream);
842 ERR(
"Failed to parse xml\n");
872 hr = IXMLDOMDocument3_get_xml(&
This->IXMLDOMDocument3_iface, &xmlString);
945 *ppvObject = &
This->IPersistStreamInit_iface;
949 *ppvObject = &
This->IObjectWithSite_iface;
953 *ppvObject = &
This->IObjectSafety_iface;
965 *ppvObject = &
This->IConnectionPointContainer_iface;
973 IUnknown_AddRef((
IUnknown*)*ppvObject);
982 TRACE(
"%p, refcount %ld.\n", iface,
ref);
991 TRACE(
"%p, refcount %ld.\n", iface,
ref);
998 IUnknown_Release(
This->site );
1000 IUri_Release(
This->base_uri );
1004 if (
This->events[eid]) IDispatch_Release(
This->events[eid]);
1017 return IDispatchEx_GetTypeInfoCount(&
This->node.dispex.IDispatchEx_iface, pctinfo);
1025 return IDispatchEx_GetTypeInfo(&
This->node.dispex.IDispatchEx_iface, iTInfo,
lcid, ppTInfo);
1037 return IDispatchEx_GetIDsOfNames(&
This->node.dispex.IDispatchEx_iface,
1038 riid, rgszNames, cNames,
lcid, rgDispId);
1047 DISPPARAMS* pDispParams,
1049 EXCEPINFO* pExcepInfo,
1053 return IDispatchEx_Invoke(&
This->node.dispex.IDispatchEx_iface,
1054 dispIdMember,
riid,
lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
1063 static const WCHAR documentW[] = {
'#',
'd',
'o',
'c',
'u',
'm',
'e',
'n',
't',0};
1141 TRACE(
"(%p)->(%p)\n",
This, firstChild);
1165 TRACE(
"(%p)->(%p)\n",
This, previousSibling);
1177 TRACE(
"(%p)->(%p)\n",
This, nextSibling);
1189 TRACE(
"(%p)->(%p)\n",
This, attributeMap);
1209 hr = IXMLDOMNode_get_nodeType(newChild, &
type);
1218 if (outNewChild) *outNewChild =
NULL;
1233 TRACE(
"(%p)->(%p %p %p)\n",
This, newChild, oldChild, outOldChild);
1289 TRACE(
"(%p)->(%d %p)\n",
This, deep, outNode);
1296 clone = xmlCopyNode((xmlNodePtr)
get_doc(
This), deep ? 1 : 2);
1320 static const WCHAR documentW[] = {
'd',
'o',
'c',
'u',
'm',
'e',
'n',
't',0};
1353 FIXME(
"(%p)->(%p) stub!\n",
This, isSpecified);
1354 *isSpecified = VARIANT_TRUE;
1364 FIXME(
"(%p)->(%p)\n",
This, definitionNode);
1422 xmlSaveCtxtPtr ctxt;
1434 buf = xmlBufferCreate();
1438 options = XML_SAVE_FORMAT | XML_SAVE_NO_DECL;
1451 TRACE(
"%ld, len=%d\n",
ret, xmlBufferLength(
buf));
1452 if(
ret != -1 && xmlBufferLength(
buf) > 0)
1510 FIXME(
"(%p)->(%p) stub!\n",
This, isParsed);
1511 *isParsed = VARIANT_TRUE;
1517 BSTR* namespaceURI )
1520 TRACE(
"(%p)->(%p)\n",
This, namespaceURI);
1553 switch (
V_VT(&output))
1568 if (IUnknown_QueryInterface(
V_UNKNOWN(&output), &IID_IXMLDOMDocument, (
void **)&doc) ==
S_OK)
1575 hr = IXMLDOMDocument_loadXML(doc,
str, &
b);
1579 else if (IUnknown_QueryInterface(
V_UNKNOWN(&output), &IID_ISequentialStream, (
void**)&
stream) ==
S_OK)
1582 ISequentialStream_Release(
stream);
1587 FIXME(
"Unsupported destination type.\n");
1592 FIXME(
"Output type %d not handled.\n",
V_VT(&output));
1621 hr = IXMLDOMNode_QueryInterface(
node, &IID_IXMLDOMDocumentType, (
void**)doctype);
1622 IXMLDOMNode_Release(
node);
1651 TRACE(
"(%p)->(%p)\n",
This, DOMElement);
1663 if(!element_node)
return S_FALSE;
1665 hr = IXMLDOMNode_QueryInterface(element_node, &IID_IXMLDOMElement, (
void**)DOMElement);
1666 IXMLDOMNode_Release(element_node);
1684 TRACE(
"(%p)->(%p)\n",
This, DOMElement);
1686 hr = IXMLDOMElement_QueryInterface( DOMElement, &IID_IXMLDOMNode, (
void**)&elementNode );
1691 if(!xmlNode)
return E_FAIL;
1693 if(!xmlNode->
node->parent)
1695 WARN(
"%p is not an orphan of %p\n", xmlNode->
node->doc, xmlNode->
node);
1697 old_doc = xmlNode->
node->doc;
1705 IXMLDOMNode_Release( elementNode );
1734 IXMLDOMNode_QueryInterface(
node, &IID_IXMLDOMElement, (
void**)
element);
1735 IXMLDOMNode_Release(
node);
1763 IXMLDOMNode_QueryInterface(
node, &IID_IXMLDOMDocumentFragment, (
void**)frag);
1764 IXMLDOMNode_Release(
node);
1793 IXMLDOMNode_QueryInterface(
node, &IID_IXMLDOMText, (
void**)
text);
1794 IXMLDOMNode_Release(
node);
1824 IXMLDOMNode_QueryInterface(
node, &IID_IXMLDOMComment, (
void**)
comment);
1825 IXMLDOMNode_Release(
node);
1855 IXMLDOMNode_QueryInterface(
node, &IID_IXMLDOMCDATASection, (
void**)cdata);
1856 IXMLDOMNode_Release(
node);
1857 hr = IXMLDOMCDATASection_put_data(*cdata,
data);
1890 hr = IXMLDOMNode_QueryInterface(
node, &IID_IXMLDOMProcessingInstruction, (
void**)
pi);
1891 IXMLDOMNode_Release(
node);
1918 IXMLDOMNode_QueryInterface(
node, &IID_IXMLDOMAttribute, (
void**)
attribute);
1919 IXMLDOMNode_Release(
node);
1948 IXMLDOMNode_QueryInterface(
node, &IID_IXMLDOMEntityReference, (
void**)
entityref);
1949 IXMLDOMNode_Release(
node);
1958 static const xmlChar everything[] =
"/descendant::node()";
1959 static const xmlChar mod_pre[] =
"*[local-name()='";
1960 static const xmlChar mod_post[] =
"']";
1962 const WCHAR *tokBegin, *tokEnd;
1973 while (tokBegin && *tokBegin)
1988 while (*tokEnd && *tokEnd !=
'/')
2017 XPath =
This->properties->XPath;
2022 This->properties->XPath = XPath;
2062 TRACE(
"node_type %d\n", node_type);
2092 if (
local || (href && *href))
2111 if (
local || (href && *href))
2150 FIXME(
"unhandled node type %d\n", node_type);
2219 *isSuccessful = VARIANT_FALSE;
2242 ERR(
"SAFEARRAY == NULL\n");
2252 WARN(
"failed to access array data, hr %#lx.\n",
hr);
2260 *isSuccessful = VARIANT_TRUE;
2266 TRACE(
"failed to parse document\n");
2278 FIXME(
"unhandled SAFEARRAY dim: %d\n", dim);
2290 hr = IUnknown_QueryInterface(
V_UNKNOWN(&
source), &IID_IXMLDOMDocument3, (
void**)&newdoc);
2302 *isSuccessful = VARIANT_TRUE;
2316 *isSuccessful = VARIANT_TRUE;
2317 ISequentialStream_Release(
stream);
2333 if (
This->properties->uri)
2335 IUri_Release(
This->properties->uri);
2345 IMoniker_Release(mon);
2353 *isSuccessful = VARIANT_TRUE;
2387 *
value = READYSTATE_COMPLETE;
2397 static const WCHAR err[] = {
'e',
'r',
'r',
'o',
'r',0};
2400 FIXME(
"(%p)->(%p): creating a dummy parseError\n", iface, errorObj);
2422 if (!
This->properties->uri)
2425 return IUri_GetPropertyBSTR(
This->properties->uri, Uri_PROPERTY_DISPLAY_URI,
url, 0);
2436 *isAsync =
This->async;
2448 This->async = isAsync;
2477 *isSuccessful = VARIANT_FALSE;
2491 TRACE(
"failed to parse document\n");
2496 *isSuccessful = VARIANT_TRUE;
2518 WARN(
"write error\n");
2539 WARN(
"stream write error, hr %#lx.\n",
hr);
2556 char *encoding =
NULL;
2558 hr = IXMLDOMDocument3_get_firstChild(doc, &
node);
2570 hr = IXMLDOMNode_QueryInterface(
node, &IID_IXMLDOMProcessingInstruction, (
void **)&
pi);
2573 hr = IXMLDOMNode_get_attributes(
node, &node_map);
2576 static const WCHAR encodingW[] = {
'e',
'n',
'c',
'o',
'd',
'i',
'n',
'g',0};
2580 hr = IXMLDOMNamedNodeMap_getNamedItem(node_map, bstr, &
item);
2586 hr = IXMLDOMNode_get_nodeValue(
item, &
var);
2596 IXMLDOMNamedNodeMap_Release(node_map);
2599 IXMLDOMProcessingInstruction_Release(
pi);
2603 IXMLDOMNode_Release(
node);
2606 if (!encoding && (encoding =
malloc(
sizeof(
"UTF-8"))))
2607 strcpy(encoding,
"UTF-8");
2622 switch (
V_VT(&destination))
2630 ret = IUnknown_QueryInterface(
pUnk, &IID_IXMLDOMDocument3, (
void**)&document);
2636 ret = IXMLDOMDocument3_get_xml(iface, &xml);
2639 ret = IXMLDOMDocument3_loadXML(document, xml, &
success);
2643 IXMLDOMDocument3_Release(document);
2647 ret = IUnknown_QueryInterface(
pUnk, &IID_IStream, (
void**)&
stream);
2652 TRACE(
"using encoding %s\n", encoding ?
debugstr_a(encoding) :
"default");
2675 WARN(
"failed to create file\n");
2680 TRACE(
"using encoding %s\n", encoding ?
debugstr_a(encoding) :
"default");
2682 handle, encoding, XML_SAVE_NO_DECL);
2711 TRACE(
"(%p)->(%p: %d)\n",
This, isValidating,
This->properties->validating);
2712 *isValidating =
This->properties->validating;
2722 TRACE(
"(%p)->(%d)\n",
This, isValidating);
2723 This->properties->validating = isValidating;
2733 TRACE(
"(%p)->(%p: %d)\n",
This, isResolving,
This->resolving);
2734 *isResolving =
This->resolving;
2744 TRACE(
"(%p)->(%d)\n",
This, isResolving);
2745 This->resolving = isResolving;
2755 TRACE(
"(%p)->(%p: %d)\n",
This, isPreserving,
This->properties->preserving);
2756 *isPreserving =
This->properties->preserving;
2766 TRACE(
"(%p)->(%d)\n",
This, isPreserving);
2767 This->properties->preserving = isPreserving;
2808 if (!
This->namespaces)
2818 if (
This->namespaces)
2819 return IXMLDOMSchemaCollection2_QueryInterface(
This->namespaces,
2820 &IID_IXMLDOMSchemaCollection, (
void**)
collection);
2862 hr = IUnknown_QueryInterface(
V_UNKNOWN(&
schema), &IID_IXMLDOMSchemaCollection, (
void**)&new_schema);
2869 hr = IDispatch_QueryInterface(
V_DISPATCH(&
schema), &IID_IXMLDOMSchemaCollection, (
void**)&new_schema);
2885 if(old_schema) IXMLDOMSchemaCollection2_Release(old_schema);
2893 return doc->properties & XML_DOC_WELLFORMED;
2923 IXMLDOMDocument3_get_readyState(iface, &
state);
2924 if (
state != READYSTATE_COMPLETE)
2947 ERR(
"doc not well-formed\n");
2966 TRACE(
"DTD validation failed\n");
2967 err_code = E_XML_INVALID;
2970 xmlFreeValidCtxt(vctx);
2984 TRACE(
"schema validation succeeded\n");
2988 ERR(
"schema validation failed\n");
2989 err_code = E_XML_INVALID;
3001 ERR(
"no DTD or schema found\n");
3002 err_code = E_XML_NODTD;
3018 return IXMLDOMDocument3_validateNode(iface, (
IXMLDOMNode*)iface,
err);
3060 struct list *pNsList;
3077 pNsList = &(
This->properties->selectNsList);
3084 This->properties->selectNsStr = nsStr;
3088 xmlChar *pTokBegin, *pTokEnd, *pTokInner;
3090 xmlXPathContextPtr
ctx;
3092 ctx = xmlXPathNewContext(
This->node.node->doc);
3096 while (*pTokBegin ==
' ' || *pTokBegin ==
'\n' ||
3097 *pTokBegin ==
'\t' || *pTokBegin ==
'\r')
3100 for (; *pTokBegin; pTokBegin = pTokEnd)
3107 while (*pTokBegin ==
' ')
3109 pTokEnd = pTokBegin;
3110 while (*pTokEnd !=
' ' && *pTokEnd != 0)
3114 if (pTokEnd == pTokBegin)
break;
3119 WARN(
"Syntax error in xmlns string: %s\n\tat token: %s\n",
3125 if (*pTokBegin ==
'=')
3128 FIXME(
"Setting default xmlns not supported - skipping.\n");
3131 else if (*pTokBegin ==
':')
3133 ns_entry->
prefix = ++pTokBegin;
3134 for (pTokInner = pTokBegin; pTokInner != pTokEnd && *pTokInner !=
'='; ++pTokInner)
3137 if (pTokInner == pTokEnd)
3140 WARN(
"Syntax error in xmlns string: %s\n\tat token: %s\n",
3149 if (pTokEnd-pTokInner > 1 &&
3150 ((*pTokInner ==
'\'' && *(pTokEnd-1) ==
'\'') ||
3151 (*pTokInner ==
'"' && *(pTokEnd-1) ==
'"')))
3153 ns_entry->
href = ++pTokInner;
3158 if (xmlXPathRegisterNs(
ctx, ns_entry->
prefix, ns_entry->
href) != 0)
3167 WARN(
"Syntax error in xmlns string: %s\n\tat token: %s\n",
3183 xmlXPathFreeContext(
ctx);
3241 struct list *pNsList;
3245 nsStr =
This->properties->selectNsStr;
3246 pNsList = &
This->properties->selectNsList;
3247 lenA =
This->properties->selectNsStr_len;
3391 return IXMLDOMDocument3_QueryInterface(&
This->IXMLDOMDocument3_iface,
riid,
ppv);
3397 return IXMLDOMDocument3_AddRef(&
This->IXMLDOMDocument3_iface);
3403 return IXMLDOMDocument3_Release(&
This->IXMLDOMDocument3_iface);
3410 FIXME(
"(%p)->(%p): stub\n",
This, ppEnum);
3424 for(iter =
This->cp_list; iter; iter = iter->
next)
3432 IConnectionPoint_AddRef(*
cp);
3468 IConnectionPoint_AddRef(iface);
3479 return IConnectionPointContainer_AddRef(
This->container);
3485 return IConnectionPointContainer_Release(
This->container);
3510 IConnectionPointContainer_AddRef(*
container);
3524 hr = IUnknown_QueryInterface(unk_sink,
This->iid, (
void**)&
sink);
3532 for (
i = 0;
i <
This->sinks_size;
i++)
3533 if (!
This->sinks[
i].unk)
3536 if (
i ==
This->sinks_size)
3542 This->sinks_size = 1;
3572 FIXME(
"(%p)->(%p): stub\n",
This, ppEnum);
3607 return IXMLDOMDocument3_QueryInterface(&
This->IXMLDOMDocument3_iface,
riid, ppvObject);
3613 return IXMLDOMDocument3_AddRef(&
This->IXMLDOMDocument3_iface);
3619 return IXMLDOMDocument3_Release(&
This->IXMLDOMDocument3_iface);
3631 return IUnknown_QueryInterface(
This->site, iid, ppvSite );
3644 IUnknown_Release(
This->site );
3650 IUri_Release(
This->base_uri);
3657 IUnknown_AddRef(
punk );
3660 IUnknown_Release(
This->site );
3680 return IXMLDOMDocument3_QueryInterface(&
This->IXMLDOMDocument3_iface,
riid,
ppv);
3686 return IXMLDOMDocument3_AddRef(&
This->IXMLDOMDocument3_iface);
3692 return IXMLDOMDocument3_Release(&
This->IXMLDOMDocument3_iface);
3695#define SAFETY_SUPPORTED_OPTIONS (INTERFACESAFE_FOR_UNTRUSTED_CALLER|INTERFACESAFE_FOR_UNTRUSTED_DATA|INTERFACE_USES_SECURITY_MANAGER)
3727#undef SAFETY_SUPPORTED_OPTIONS
3753 doc =
malloc(
sizeof(*doc));
3763 doc->
async = VARIANT_TRUE;
3784 TRACE(
"returning iface %p\n", *document);
3818 TRACE(
"(%p)\n", document);
XMLPUBFUN void xmlSAX2StartDocument(void *ctx)
XMLPUBFUN void xmlSAX2EntityDecl(void *ctx, const xmlChar *name, int type, const xmlChar *publicId, const xmlChar *systemId, xmlChar *content)
XMLPUBFUN void xmlSAX2UnparsedEntityDecl(void *ctx, const xmlChar *name, const xmlChar *publicId, const xmlChar *systemId, const xmlChar *notationName)
XMLPUBFUN void xmlSAX2EndDocument(void *ctx)
XMLPUBFUN xmlEntityPtr xmlSAX2GetParameterEntity(void *ctx, const xmlChar *name)
XMLPUBFUN void xmlSAX2Comment(void *ctx, const xmlChar *value)
XMLPUBFUN void xmlSAX2ElementDecl(void *ctx, const xmlChar *name, int type, xmlElementContentPtr content)
XMLPUBFUN int xmlSAX2HasInternalSubset(void *ctx)
XMLPUBFUN void xmlSAX2AttributeDecl(void *ctx, const xmlChar *elem, const xmlChar *fullname, int type, int def, const xmlChar *defaultValue, xmlEnumerationPtr tree)
XMLPUBFUN void xmlSAX2Characters(void *ctx, const xmlChar *ch, int len)
XMLPUBFUN void xmlSAX2NotationDecl(void *ctx, const xmlChar *name, const xmlChar *publicId, const xmlChar *systemId)
XMLPUBFUN int xmlSAX2IsStandalone(void *ctx)
XMLPUBFUN void xmlSAX2CDataBlock(void *ctx, const xmlChar *value, int len)
XMLPUBFUN void xmlSAX2ExternalSubset(void *ctx, const xmlChar *name, const xmlChar *ExternalID, const xmlChar *SystemID)
XMLPUBFUN void xmlSAX2StartElementNs(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)
XMLPUBFUN xmlParserInputPtr xmlSAX2ResolveEntity(void *ctx, const xmlChar *publicId, const xmlChar *systemId)
XMLPUBFUN void xmlSAX2InternalSubset(void *ctx, const xmlChar *name, const xmlChar *ExternalID, const xmlChar *SystemID)
XMLPUBFUN void xmlSAX2EndElementNs(void *ctx, const xmlChar *localname, const xmlChar *prefix, const xmlChar *URI)
XMLPUBFUN void xmlSAX2ProcessingInstruction(void *ctx, const xmlChar *target, const xmlChar *data)
XMLPUBFUN void xmlSAX2Reference(void *ctx, const xmlChar *name)
XMLPUBFUN void xmlSAX2SetDocumentLocator(void *ctx, xmlSAXLocatorPtr loc)
XMLPUBFUN int xmlSAX2HasExternalSubset(void *ctx)
XMLPUBFUN xmlEntityPtr xmlSAX2GetEntity(void *ctx, const xmlChar *name)
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static void list_remove(struct list_entry *entry)
static void list_add_tail(struct list_entry *head, struct list_entry *entry)
static void list_add_head(struct list_entry *head, struct list_entry *entry)
static void list_init(struct list_entry *head)
HRESULT create_uri(const WCHAR *, DWORD, IUri **) DECLSPEC_HIDDEN
HRESULT detach_bsc(bsc_t *bsc)
HRESULT bind_url(IMoniker *mon, HRESULT(*onDataAvailable)(void *, char *, DWORD), void *obj, bsc_t **ret)
#define INVALID_HANDLE_VALUE
static __inline const char * debugstr_an(const char *s, int n)
#define FILE_ATTRIBUTE_NORMAL
#define WideCharToMultiByte
#define MultiByteToWideChar
static const WCHAR version[]
BOOL WINAPI WriteFile(IN HANDLE hFile, IN LPCVOID lpBuffer, IN DWORD nNumberOfBytesToWrite OPTIONAL, OUT LPDWORD lpNumberOfBytesWritten, IN LPOVERLAPPED lpOverlapped OPTIONAL)
int WINAPI lstrcmpiW(LPCWSTR str1, LPCWSTR str2)
static const WCHAR documentW[]
static domdoc * impl_from_IObjectWithSite(IObjectWithSite *iface)
static HRESULT WINAPI PersistStreamInit_Save(IPersistStreamInit *iface, IStream *stream, BOOL clr_dirty)
static domdoc * impl_from_IXMLDOMDocument3(IXMLDOMDocument3 *iface)
static ConnectionPoint * impl_from_IConnectionPoint(IConnectionPoint *iface)
static HRESULT WINAPI domdoc_Safety_SetInterfaceSafetyOptions(IObjectSafety *iface, REFIID riid, DWORD mask, DWORD enabled)
struct _select_ns_entry select_ns_entry
LONG xmldoc_release_refs(xmlDocPtr doc, LONG refs)
static HRESULT WINAPI PersistStreamInit_QueryInterface(IPersistStreamInit *iface, REFIID riid, void **ppvObj)
static void clear_selectNsList(struct list *pNsList)
struct _orphan_entry orphan_entry
static HRESULT WINAPI domdoc_get_prefix(IXMLDOMDocument3 *iface, BSTR *prefix)
static domdoc_properties * properties_from_xmlDocPtr(xmlDocPtr doc)
static HRESULT WINAPI domdoc_get_attributes(IXMLDOMDocument3 *iface, IXMLDOMNamedNodeMap **attributeMap)
static HRESULT WINAPI domdoc_createTextNode(IXMLDOMDocument3 *iface, BSTR data, IXMLDOMText **text)
static HRESULT WINAPI domdoc_get_dataType(IXMLDOMDocument3 *iface, VARIANT *typename)
static HRESULT WINAPI domdoc_getElementsByTagName(IXMLDOMDocument3 *iface, BSTR tagName, IXMLDOMNodeList **resultList)
static HRESULT WINAPI domdoc_save(IXMLDOMDocument3 *iface, VARIANT destination)
static HRESULT WINAPI domdoc_removeChild(IXMLDOMDocument3 *iface, IXMLDOMNode *child, IXMLDOMNode **oldChild)
static HRESULT WINAPI domdoc_get_documentElement(IXMLDOMDocument3 *iface, IXMLDOMElement **DOMElement)
static HRESULT WINAPI domdoc_get_text(IXMLDOMDocument3 *iface, BSTR *p)
static HRESULT WINAPI domdoc_GetIDsOfNames(IXMLDOMDocument3 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT WINAPI domdoc_appendChild(IXMLDOMDocument3 *iface, IXMLDOMNode *child, IXMLDOMNode **outChild)
static HRESULT WINAPI ConnectionPoint_QueryInterface(IConnectionPoint *iface, REFIID riid, void **ppv)
static HRESULT WINAPI domdoc_createElement(IXMLDOMDocument3 *iface, BSTR tagname, IXMLDOMElement **element)
static void ConnectionPoint_Init(ConnectionPoint *cp, struct domdoc *doc, REFIID riid)
@ EVENTID_READYSTATECHANGE
void set_xpathmode(xmlDocPtr doc, BOOL xpath)
static ULONG WINAPI domdoc_Safety_AddRef(IObjectSafety *iface)
static HRESULT WINAPI domdoc_nodeFromID(IXMLDOMDocument3 *iface, BSTR idString, IXMLDOMNode **node)
static HRESULT WINAPI domdoc_get_nodeTypedValue(IXMLDOMDocument3 *iface, VARIANT *v)
static const tid_t domdoc_se_tids[]
static HRESULT WINAPI domdoc_put_preserveWhiteSpace(IXMLDOMDocument3 *iface, VARIANT_BOOL isPreserving)
BOOL is_preserving_whitespace(xmlNodePtr node)
static HRESULT WINAPI domdoc_get_childNodes(IXMLDOMDocument3 *iface, IXMLDOMNodeList **childList)
static xmlDocPtr get_doc(domdoc *This)
static HRESULT WINAPI domdoc_get_previousSibling(IXMLDOMDocument3 *iface, IXMLDOMNode **previousSibling)
static HRESULT WINAPI domdoc_ObjectWithSite_GetSite(IObjectWithSite *iface, REFIID iid, void **ppvSite)
static HRESULT WINAPI domdoc_get_schemas(IXMLDOMDocument3 *iface, VARIANT *schema)
static HRESULT WINAPI domdoc_put_onreadystatechange(IXMLDOMDocument3 *iface, VARIANT event)
static HRESULT WINAPI PersistStreamInit_GetSizeMax(IPersistStreamInit *iface, ULARGE_INTEGER *pcbSize)
static HRESULT WINAPI domdoc_importNode(IXMLDOMDocument3 *iface, IXMLDOMNode *node, VARIANT_BOOL deep, IXMLDOMNode **clone)
static HRESULT WINAPI PersistStreamInit_InitNew(IPersistStreamInit *iface)
static void LIBXML2_LOG_CALLBACK validate_warning(void *ctx, char const *msg,...)
static const WCHAR PropertyResolveExternalsW[]
static const IObjectSafetyVtbl domdocObjectSafetyVtbl
static int XMLCALL domdoc_save_writecallback(void *ctx, const char *buffer, int len)
static HRESULT WINAPI domdoc_get_async(IXMLDOMDocument3 *iface, VARIANT_BOOL *isAsync)
static HRESULT WINAPI domdoc_transformNode(IXMLDOMDocument3 *iface, IXMLDOMNode *node, BSTR *p)
static HRESULT WINAPI domdoc_get_namespaces(IXMLDOMDocument3 *iface, IXMLDOMSchemaCollection **collection)
static const WCHAR PropertyAllowDocumentFunctionW[]
static HRESULT WINAPI domdoc_get_lastChild(IXMLDOMDocument3 *iface, IXMLDOMNode **lastChild)
static HRESULT WINAPI domdoc_get_nodeName(IXMLDOMDocument3 *iface, BSTR *name)
int registerNamespaces(xmlXPathContextPtr ctxt)
static HRESULT WINAPI ConnectionPoint_GetConnectionInterface(IConnectionPoint *iface, IID *iid)
static HRESULT WINAPI domdoc_createAttribute(IXMLDOMDocument3 *iface, BSTR name, IXMLDOMAttribute **attribute)
static HRESULT WINAPI domdoc_get_xml(IXMLDOMDocument3 *iface, BSTR *p)
static HRESULT WINAPI domdoc_get_preserveWhiteSpace(IXMLDOMDocument3 *iface, VARIANT_BOOL *isPreserving)
static HRESULT WINAPI domdoc_selectSingleNode(IXMLDOMDocument3 *iface, BSTR p, IXMLDOMNode **outNode)
static HRESULT WINAPI PersistStreamInit_GetClassID(IPersistStreamInit *iface, CLSID *classid)
xmlChar * tagName_to_XPath(const BSTR tagName)
static HRESULT WINAPI ConnectionPointContainer_QueryInterface(IConnectionPointContainer *iface, REFIID riid, void **ppv)
static ULONG WINAPI domdoc_Safety_Release(IObjectSafety *iface)
static HRESULT WINAPI ConnectionPointContainer_EnumConnectionPoints(IConnectionPointContainer *iface, IEnumConnectionPoints **ppEnum)
static HRESULT WINAPI domdoc_get_definition(IXMLDOMDocument3 *iface, IXMLDOMNode **definitionNode)
static HRESULT WINAPI domdoc_get_nodeTypeString(IXMLDOMDocument3 *iface, BSTR *p)
static HRESULT WINAPI domdoc_GetTypeInfoCount(IXMLDOMDocument3 *iface, UINT *pctinfo)
static HRESULT WINAPI domdoc_replaceChild(IXMLDOMDocument3 *iface, IXMLDOMNode *newChild, IXMLDOMNode *oldChild, IXMLDOMNode **outOldChild)
static int XMLCALL domdoc_get_xml_writecallback(void *ctx, const char *data, int len)
static char * xmldoc_encoding(IXMLDOMDocument3 *doc)
static HRESULT WINAPI domdoc_createDocumentFragment(IXMLDOMDocument3 *iface, IXMLDOMDocumentFragment **frag)
static HRESULT WINAPI domdoc_get_implementation(IXMLDOMDocument3 *iface, IXMLDOMImplementation **impl)
static void properties_release(domdoc_properties *properties)
static HRESULT WINAPI domdoc_get_nodeType(IXMLDOMDocument3 *iface, DOMNodeType *type)
static const WCHAR PropertyAllowXsltScriptW[]
static HRESULT WINAPI domdoc_putref_schemas(IXMLDOMDocument3 *iface, VARIANT schema)
static ULONG WINAPI domdoc_ObjectWithSite_Release(IObjectWithSite *iface)
static HRESULT WINAPI domdoc_get_readyState(IXMLDOMDocument3 *iface, LONG *value)
static const WCHAR PropertyMaxElementDepth[]
static HRESULT WINAPI ConnectionPoint_GetConnectionPointContainer(IConnectionPoint *iface, IConnectionPointContainer **container)
HRESULT xmldoc_remove_orphan(xmlDocPtr doc, xmlNodePtr node)
static HRESULT WINAPI domdoc_put_onDataAvailable(IXMLDOMDocument3 *iface, VARIANT sink)
static domdoc * impl_from_IPersistStreamInit(IPersistStreamInit *iface)
static domdoc * impl_from_IConnectionPointContainer(IConnectionPointContainer *iface)
static const WCHAR PropertyNormalizeAttributeValuesW[]
static HRESULT WINAPI ConnectionPoint_Unadvise(IConnectionPoint *iface, DWORD cookie)
static const IPersistStreamInitVtbl xmldoc_IPersistStreamInit_VTable
static HRESULT WINAPI domdoc_Invoke(IXMLDOMDocument3 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static const IConnectionPointVtbl ConnectionPointVtbl
#define SAFETY_SUPPORTED_OPTIONS
static HRESULT WINAPI domdoc_setProperty(IXMLDOMDocument3 *iface, BSTR p, VARIANT value)
void xmldoc_init(xmlDocPtr doc, MSXML_VERSION version)
IUnknown * create_domdoc(xmlNodePtr document)
static HRESULT WINAPI domdoc_hasChildNodes(IXMLDOMDocument3 *iface, VARIANT_BOOL *ret)
static HRESULT WINAPI domdoc_put_documentElement(IXMLDOMDocument3 *iface, IXMLDOMElement *DOMElement)
static dispex_static_data_t domdoc_dispex
static ULONG WINAPI PersistStreamInit_AddRef(IPersistStreamInit *iface)
static HRESULT WINAPI domdoc_loadXML(IXMLDOMDocument3 *iface, BSTR data, VARIANT_BOOL *isSuccessful)
LONG xmldoc_release(xmlDocPtr doc)
static domdoc_properties * copy_properties(domdoc_properties const *properties)
static HRESULT WINAPI domdoc_validate(IXMLDOMDocument3 *iface, IXMLDOMParseError **err)
static int XMLCALL domdoc_stream_save_closecallback(void *ctx)
static const WCHAR PropertySelectionNamespacesW[]
static HRESULT WINAPI domdoc_get_parsed(IXMLDOMDocument3 *iface, VARIANT_BOOL *isParsed)
static HRESULT WINAPI domdoc_selectNodes(IXMLDOMDocument3 *iface, BSTR p, IXMLDOMNodeList **outList)
static HRESULT WINAPI domdoc_createNode(IXMLDOMDocument3 *iface, VARIANT Type, BSTR name, BSTR namespaceURI, IXMLDOMNode **node)
static HRESULT WINAPI PersistStreamInit_IsDirty(IPersistStreamInit *iface)
static const struct IConnectionPointContainerVtbl ConnectionPointContainerVtbl
HRESULT get_domdoc_from_xmldoc(xmlDocPtr xmldoc, IXMLDOMDocument3 **document)
static HRESULT WINAPI domdoc_put_async(IXMLDOMDocument3 *iface, VARIANT_BOOL isAsync)
LONG xmldoc_add_ref(xmlDocPtr doc)
static HRESULT WINAPI ConnectionPoint_Advise(IConnectionPoint *iface, IUnknown *unk_sink, DWORD *cookie)
static const IObjectWithSiteVtbl domdocObjectSite
static HRESULT WINAPI domdoc_put_nodeTypedValue(IXMLDOMDocument3 *iface, VARIANT typedValue)
static HRESULT WINAPI domdoc_get_nodeValue(IXMLDOMDocument3 *iface, VARIANT *value)
static HRESULT WINAPI domdoc_cloneNode(IXMLDOMDocument3 *iface, VARIANT_BOOL deep, IXMLDOMNode **outNode)
static BOOL strn_isspace(xmlChar const *str, int len)
static void sax_serror(void *ctx, const xmlError *err)
void xmldoc_link_xmldecl(xmlDocPtr doc, xmlNodePtr node)
static const struct IXMLDOMDocument3Vtbl XMLDOMDocument3Vtbl
static HRESULT WINAPI ConnectionPointContainer_FindConnectionPoint(IConnectionPointContainer *iface, REFIID riid, IConnectionPoint **cp)
xmlNodePtr xmldoc_unlink_xmldecl(xmlDocPtr doc)
static HRESULT WINAPI domdoc_get_parentNode(IXMLDOMDocument3 *iface, IXMLDOMNode **parent)
static HRESULT WINAPI domdoc_ObjectWithSite_SetSite(IObjectWithSite *iface, IUnknown *punk)
LONG xmldoc_add_refs(xmlDocPtr doc, LONG refs)
static const WCHAR PropertyProhibitDTDW[]
static ULONG WINAPI PersistStreamInit_Release(IPersistStreamInit *iface)
static HRESULT WINAPI domdoc_get_doctype(IXMLDOMDocument3 *iface, IXMLDOMDocumentType **doctype)
BOOL is_xpathmode(const xmlDocPtr doc)
static const WCHAR PropertySelectionLanguageW[]
static xmlDocPtr doparse(domdoc *This, char const *ptr, int len, xmlCharEncoding encoding)
static int XMLCALL domdoc_save_closecallback(void *ctx)
static HRESULT WINAPI domdoc_get_validateOnParse(IXMLDOMDocument3 *iface, VARIANT_BOOL *isValidating)
HRESULT dom_document_create(MSXML_VERSION version, void **ppObj)
static const tid_t domdoc_iface_tids[]
static HRESULT WINAPI domdoc_get_namespaceURI(IXMLDOMDocument3 *iface, BSTR *namespaceURI)
static void LIBXML2_LOG_CALLBACK validate_error(void *ctx, char const *msg,...)
static HRESULT WINAPI domdoc_createCDATASection(IXMLDOMDocument3 *iface, BSTR data, IXMLDOMCDATASection **cdata)
static HRESULT WINAPI domdoc_get_firstChild(IXMLDOMDocument3 *iface, IXMLDOMNode **firstChild)
static HRESULT WINAPI domdoc_get_nextSibling(IXMLDOMDocument3 *iface, IXMLDOMNode **nextSibling)
static HRESULT set_doc_event(domdoc *doc, eventid_t eid, const VARIANT *v)
static void release_namespaces(domdoc *This)
static HRESULT WINAPI domdoc_put_validateOnParse(IXMLDOMDocument3 *iface, VARIANT_BOOL isValidating)
static ULONG WINAPI ConnectionPointContainer_AddRef(IConnectionPointContainer *iface)
static HRESULT WINAPI domdoc_put_text(IXMLDOMDocument3 *iface, BSTR text)
static xmldoc_priv * priv_from_xmlDocPtr(const xmlDocPtr doc)
static HRESULT WINAPI domdoc_createEntityReference(IXMLDOMDocument3 *iface, BSTR name, IXMLDOMEntityReference **entityref)
static HRESULT WINAPI domdoc_put_resolveExternals(IXMLDOMDocument3 *iface, VARIANT_BOOL isResolving)
static HRESULT WINAPI domdoc_GetTypeInfo(IXMLDOMDocument3 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static HRESULT domdoc_load_moniker(domdoc *This, IMoniker *mon)
static const WCHAR PropertyNewParserW[]
static HRESULT WINAPI PersistStreamInit_Load(IPersistStreamInit *iface, IStream *stream)
static HRESULT WINAPI domdoc_load(IXMLDOMDocument3 *iface, VARIANT source, VARIANT_BOOL *isSuccessful)
static ULONG WINAPI domdoc_Release(IXMLDOMDocument3 *iface)
static HRESULT WINAPI domdoc_abort(IXMLDOMDocument3 *iface)
static HRESULT WINAPI domdoc_get_specified(IXMLDOMDocument3 *iface, VARIANT_BOOL *isSpecified)
static HRESULT WINAPI domdoc_createComment(IXMLDOMDocument3 *iface, BSTR data, IXMLDOMComment **comment)
static HRESULT WINAPI domdoc_Safety_QueryInterface(IObjectSafety *iface, REFIID riid, void **ppv)
static domdoc_properties * create_properties(MSXML_VERSION version)
static domdoc * impl_from_IObjectSafety(IObjectSafety *iface)
static ULONG WINAPI domdoc_ObjectWithSite_AddRef(IObjectWithSite *iface)
static HRESULT WINAPI domdoc_transformNodeToObject(IXMLDOMDocument3 *iface, IXMLDOMNode *stylesheet, VARIANT output)
static HRESULT domdoc_load_from_stream(domdoc *doc, ISequentialStream *stream)
static HRESULT attach_xmldoc(domdoc *This, xmlDocPtr xml)
static HRESULT WINAPI domdoc_getProperty(IXMLDOMDocument3 *iface, BSTR p, VARIANT *var)
static HRESULT WINAPI domdoc_createProcessingInstruction(IXMLDOMDocument3 *iface, BSTR target, BSTR data, IXMLDOMProcessingInstruction **pi)
struct _xmldoc_priv xmldoc_priv
static void LIBXML2_LOG_CALLBACK sax_error(void *ctx, char const *msg,...)
static HRESULT WINAPI domdoc_QueryInterface(IXMLDOMDocument3 *iface, REFIID riid, void **ppvObject)
static HRESULT WINAPI ConnectionPoint_EnumConnections(IConnectionPoint *iface, IEnumConnections **ppEnum)
static HRESULT WINAPI domdoc_get_parseError(IXMLDOMDocument3 *iface, IXMLDOMParseError **errorObj)
static ULONG WINAPI ConnectionPoint_AddRef(IConnectionPoint *iface)
static HRESULT WINAPI domdoc_get_resolveExternals(IXMLDOMDocument3 *iface, VARIANT_BOOL *isResolving)
static ULONG WINAPI domdoc_AddRef(IXMLDOMDocument3 *iface)
static ULONG WINAPI ConnectionPointContainer_Release(IConnectionPointContainer *iface)
static HRESULT WINAPI domdoc_put_onTransformNode(IXMLDOMDocument3 *iface, VARIANT sink)
static HRESULT WINAPI domdoc_put_nodeValue(IXMLDOMDocument3 *iface, VARIANT value)
static const WCHAR PropValueXSLPatternW[]
static BOOL is_wellformed(xmlDocPtr doc)
static HRESULT domdoc_onDataAvailable(void *obj, char *ptr, DWORD len)
static void sax_characters(void *ctx, const xmlChar *ch, int len)
static domdoc_properties * properties_add_ref(domdoc_properties *properties)
static HRESULT WINAPI domdoc_get_ownerDocument(IXMLDOMDocument3 *iface, IXMLDOMDocument **doc)
static HRESULT WINAPI domdoc_validateNode(IXMLDOMDocument3 *iface, IXMLDOMNode *node, IXMLDOMParseError **err)
static HRESULT WINAPI domdoc_insertBefore(IXMLDOMDocument3 *iface, IXMLDOMNode *newChild, VARIANT refChild, IXMLDOMNode **outNewChild)
static const WCHAR PropertyValidateOnParse[]
static HRESULT WINAPI domdoc_put_dataType(IXMLDOMDocument3 *iface, BSTR dataTypeName)
static ULONG WINAPI ConnectionPoint_Release(IConnectionPoint *iface)
static int XMLCALL domdoc_stream_save_writecallback(void *ctx, const char *buffer, int len)
static HRESULT WINAPI domdoc_ObjectWithSite_QueryInterface(IObjectWithSite *iface, REFIID riid, void **ppvObject)
static xmldoc_priv * create_priv(void)
static const WCHAR PropValueXPathW[]
static void LIBXML2_LOG_CALLBACK sax_warning(void *ctx, char const *msg,...)
HRESULT xmldoc_add_orphan(xmlDocPtr doc, xmlNodePtr node)
static HRESULT WINAPI domdoc_Safety_GetInterfaceSafetyOptions(IObjectSafety *iface, REFIID riid, DWORD *supported, DWORD *enabled)
MSXML_VERSION xmldoc_version(xmlDocPtr doc)
static HRESULT WINAPI domdoc_get_baseName(IXMLDOMDocument3 *iface, BSTR *name)
static HRESULT WINAPI domdoc_get_url(IXMLDOMDocument3 *iface, BSTR *url)
const CLSID * DOMDocument_version(MSXML_VERSION v)
HRESULT WINAPI GetHGlobalFromStream(IStream *pstm, HGLOBAL *phglobal)
HRESULT WINAPI CreateStreamOnHGlobal(HGLOBAL hGlobal, BOOL fDeleteOnRelease, LPSTREAM *ppstm)
HRESULT WINAPI SafeArrayGetUBound(SAFEARRAY *psa, UINT nDim, LONG *plUbound)
HRESULT WINAPI SafeArrayAccessData(SAFEARRAY *psa, void **ppvData)
HRESULT WINAPI SafeArrayUnaccessData(SAFEARRAY *psa)
UINT WINAPI SafeArrayGetDim(SAFEARRAY *psa)
static void *static void *static LPDIRECTPLAY IUnknown * pUnk
#define InterlockedExchangePointer(Target, Value)
@ XML_CHAR_ENCODING_UTF16LE
static unsigned char buff[32768]
GLuint GLuint GLsizei GLenum type
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLenum GLenum GLsizei const GLuint GLboolean enabled
GLboolean GLboolean GLboolean b
GLenum GLuint GLenum GLsizei const GLchar * buf
GLsizei GLenum GLboolean sink
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
BOOL NTAPI GlobalUnlock(HGLOBAL hMem)
SIZE_T NTAPI GlobalSize(HGLOBAL hMem)
static HRESULT create_node(HTMLDocumentNode *, nsIDOMNode *, HTMLDOMNode **)
static HTMLDOMNode * get_node_obj(IHTMLDOMNode *)
IUri * get_base_uri(IUnknown *site)
#define InterlockedExchangeAdd
static ERESOURCE GlobalLock
#define memcpy(s1, s2, n)
#define comment(fmt, arg1)
const IID IID_IObjectWithSite
static const char * debugstr_variant(const VARIANT *var)
static PROCESS_INFORMATION pi
static ICollection collection
static VARIANTARG static DISPID
static SCRIPT_CACHE SCRIPT_ANALYSIS * psa
HRESULT create_dom_implementation(IHTMLDOMImplementation **) DECLSPEC_HIDDEN
enum tagDOMNodeType DOMNodeType
@ NODE_PROCESSING_INSTRUCTION
static HRESULT return_bstr(const WCHAR *value, BSTR *p)
#define LIBXML2_LOG_CALLBACK
HRESULT node_has_childnodes(const xmlnode *, VARIANT_BOOL *)
#define NODE_PRIV_TRAILING_IGNORABLE_WS
HRESULT node_get_text(const xmlnode *, BSTR *)
HRESULT node_get_last_child(xmlnode *, IXMLDOMNode **)
static BSTR bstr_from_xmlChar(const xmlChar *str)
HRESULT node_remove_child(xmlnode *, IXMLDOMNode *, IXMLDOMNode **)
HRESULT dom_pi_put_xml_decl(IXMLDOMNode *node, BSTR data)
#define LIBXML2_CALLBACK_ERR(caller, msg, ap)
HRESULT node_transform_node_params(const xmlnode *, IXMLDOMNode *, BSTR *, ISequentialStream *, const struct xslprocessor_params *)
#define LIBXML2_CALLBACK_WARN(caller, msg, ap)
HRESULT node_get_parent(xmlnode *, IXMLDOMNode **)
HRESULT node_replace_child(xmlnode *, IXMLDOMNode *, IXMLDOMNode *, IXMLDOMNode **)
static xmlChar * xmlchar_from_wchar(const WCHAR *str)
static HRESULT return_null_bstr(BSTR *p)
IXMLDOMParseError * create_parseError(LONG code, BSTR url, BSTR reason, BSTR srcText, LONG line, LONG linepos, LONG filepos)
HRESULT node_append_child(xmlnode *, IXMLDOMNode *, IXMLDOMNode **)
static xmlChar * xmlchar_from_wcharn(const WCHAR *str, int nchars, BOOL use_xml_alloc)
HRESULT create_selection(xmlNodePtr, xmlChar *, IXMLDOMNodeList **)
int xmlnode_get_inst_cnt(xmlnode *node)
HRESULT node_transform_node(const xmlnode *, IXMLDOMNode *, BSTR *)
HRESULT node_select_nodes(const xmlnode *, BSTR, IXMLDOMNodeList **)
HRESULT node_get_first_child(xmlnode *, IXMLDOMNode **)
HRESULT SchemaCache_validate_tree(IXMLDOMSchemaCollection2 *, xmlNodePtr)
static HRESULT return_null_var(VARIANT *p)
HRESULT SchemaCache_create(MSXML_VERSION, void **)
void destroy_xmlnode(xmlnode *)
static HRESULT return_null_ptr(void **p)
HRESULT node_insert_before(xmlnode *, IXMLDOMNode *, const VARIANT *, IXMLDOMNode **)
#define NODE_PRIV_CHILD_IGNORABLE_WS
HRESULT node_select_singlenode(const xmlnode *, BSTR, IXMLDOMNode **)
void init_xmlnode(xmlnode *, xmlNodePtr, IXMLDOMNode *, dispex_static_data_t *)
#define LIBXML2_CALLBACK_SERROR(caller, err)
HRESULT node_get_owner_doc(const xmlnode *, IXMLDOMDocument **)
HRESULT cache_from_doc_ns(IXMLDOMSchemaCollection2 *, xmlnode *)
BSTR EnsureCorrectEOL(BSTR)
HRESULT node_get_child_nodes(xmlnode *, IXMLDOMNodeList **)
BOOL node_query_interface(xmlnode *, REFIID, void **)
static HRESULT return_null_node(IXMLDOMNode **p)
HRESULT node_create_supporterrorinfo(const tid_t *, void **)
BSTR WINAPI SysAllocString(LPCOLESTR str)
UINT WINAPI SysStringLen(BSTR str)
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
BSTR WINAPI SysAllocStringLen(const OLECHAR *str, unsigned int len)
#define CONNECT_E_CANNOTCONNECT
#define CONNECT_E_NOCONNECTION
const GUID IID_IConnectionPointContainer
const GUID IID_IConnectionPoint
const GUID IID_IPropertyNotifySink
const GUID IID_IPersistStreamInit
XMLPUBFUN xmlParserCtxtPtr xmlCreateMemoryParserCtxt(const char *buffer, int size)
XMLPUBFUN int xmlSwitchEncoding(xmlParserCtxtPtr ctxt, xmlCharEncoding enc)
const GUID IID_IPersistStream
#define IsEqualGUID(rguid1, rguid2)
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
#define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field)
XMLPUBFUN int xmlParseDocument(xmlParserCtxtPtr ctxt)
XMLPUBFUN void xmlFreeParserCtxt(xmlParserCtxtPtr ctxt)
IConnectionPointContainer * container
IConnectionPoint IConnectionPoint_iface
IPropertyNotifySink * propnotif
domdoc_properties * properties
IXMLDOMSchemaCollection2 * schemaCache
xmlChar const * selectNsStr
ConnectionPoint * cp_list
ConnectionPoint cp_propnotif
IPersistStreamInit IPersistStreamInit_iface
ConnectionPoint cp_domdocevents
IXMLDOMSchemaCollection2 * namespaces
ConnectionPoint cp_dispatch
IObjectSafety IObjectSafety_iface
IDispatch * events[EVENTID_LAST]
domdoc_properties * properties
IObjectWithSite IObjectWithSite_iface
IConnectionPointContainer IConnectionPointContainer_iface
IXMLDOMDocument3 IXMLDOMDocument3_iface
Character const *const prefix
#define CONTAINING_RECORD(address, type, field)
HRESULT WINAPI CreateURLMonikerEx2(IMoniker *pmkContext, IUri *pUri, IMoniker **ppmk, DWORD dwFlags)
xmlValidCtxt * xmlValidCtxtPtr
HRESULT WINAPI DECLSPEC_HOTPATCH VariantChangeType(VARIANTARG *pvargDest, VARIANTARG *pvargSrc, USHORT wFlags, VARTYPE vt)
HRESULT WINAPI DECLSPEC_HOTPATCH VariantClear(VARIANTARG *pVarg)
void WINAPI VariantInit(VARIANTARG *pVarg)
#define success(from, fromstr, to, tostr)
WINBASEAPI _In_ DWORD _Out_ _In_ WORD wFlags
#define DISP_E_TYPEMISMATCH
void int int ULONGLONG int va_list * ap
XMLPUBFUN int xmlStrlen(const xmlChar *str)
XMLPUBFUN int xmlStrncmp(const xmlChar *str1, const xmlChar *str2, int len)
XMLPUBFUN xmlChar * xmlStrncat(xmlChar *cur, const xmlChar *add, int len)
XMLPUBFUN xmlChar * xmlStrcat(xmlChar *cur, const xmlChar *add)
XMLPUBFUN int xmlStrEqual(const xmlChar *str1, const xmlChar *str2)
XMLPUBFUN xmlChar * xmlStrdup(const xmlChar *cur)