From: Jacek Caban jacek@codeweavers.com
--- dlls/mshtml/htmlselect.c | 14 ++++++++------ dlls/mshtml/mshtml_private.h | 1 + dlls/mshtml/tests/documentmode.js | 2 ++ 3 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/dlls/mshtml/htmlselect.c b/dlls/mshtml/htmlselect.c index 765686a1260..31f0e33a2b4 100644 --- a/dlls/mshtml/htmlselect.c +++ b/dlls/mshtml/htmlselect.c @@ -1300,12 +1300,14 @@ static const tid_t HTMLSelectElement_tids[] = { 0 };
-static dispex_static_data_t HTMLSelectElement_dispex = { - "HTMLSelectElement", - &HTMLSelectElement_event_target_vtbl.dispex_vtbl, - DispHTMLSelectElement_tid, - HTMLSelectElement_tids, - HTMLElement_init_dispex_info +dispex_static_data_t HTMLSelectElement_dispex = { + .name = "HTMLSelectElement", + .id = PROT_HTMLSelectElement, + .prototype_id = PROT_HTMLElement, + .vtbl = &HTMLSelectElement_event_target_vtbl.dispex_vtbl, + .disp_tid = DispHTMLSelectElement_tid, + .iface_tids = HTMLSelectElement_tids, + .init_info = HTMLElement_init_dispex_info, };
HRESULT HTMLSelectElement_Create(HTMLDocumentNode *doc, nsIDOMElement *nselem, HTMLElement **elem) diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index 7067d71bed7..f585d1920f4 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -430,6 +430,7 @@ typedef struct { X(HTMLObjectElement) \ X(HTMLOptionElement) \ X(HTMLScriptElement) \ + X(HTMLSelectElement) \ X(HTMLTitleElement) \ X(MutationObserver) \ X(Navigator) \ diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index 2a557e0670f..f2b3968140f 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -3182,4 +3182,6 @@ sync_test("prototypes", function() { check(HTMLEmbedElement.prototype, HTMLElement.prototype, "embed element prototype"); check(document.createElement("script"), HTMLScriptElement.prototype, "script element"); check(HTMLScriptElement.prototype, HTMLElement.prototype, "script element prototype"); + check(document.createElement("select"), HTMLSelectElement.prototype, "select element"); + check(HTMLSelectElement.prototype, HTMLElement.prototype, "select element prototype"); });
From: Jacek Caban jacek@codeweavers.com
--- dlls/mshtml/htmlstyleelem.c | 14 ++++++++------ dlls/mshtml/mshtml_private.h | 1 + dlls/mshtml/tests/documentmode.js | 2 ++ 3 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/dlls/mshtml/htmlstyleelem.c b/dlls/mshtml/htmlstyleelem.c index 3d23bff5da8..9a5d43ad36e 100644 --- a/dlls/mshtml/htmlstyleelem.c +++ b/dlls/mshtml/htmlstyleelem.c @@ -335,12 +335,14 @@ static const tid_t HTMLStyleElement_iface_tids[] = { HTMLELEMENT_TIDS, 0 }; -static dispex_static_data_t HTMLStyleElement_dispex = { - "HTMLStyleElement", - &HTMLStyleElement_event_target_vtbl.dispex_vtbl, - DispHTMLStyleElement_tid, - HTMLStyleElement_iface_tids, - HTMLStyleElement_init_dispex_info +dispex_static_data_t HTMLStyleElement_dispex = { + .name = "HTMLStyleElement", + .id = PROT_HTMLStyleElement, + .prototype_id = PROT_HTMLElement, + .vtbl = &HTMLStyleElement_event_target_vtbl.dispex_vtbl, + .disp_tid = DispHTMLStyleElement_tid, + .iface_tids = HTMLStyleElement_iface_tids, + .init_info = HTMLStyleElement_init_dispex_info, };
HRESULT HTMLStyleElement_Create(HTMLDocumentNode *doc, nsIDOMElement *nselem, HTMLElement **elem) diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index f585d1920f4..40bde4fd98e 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -431,6 +431,7 @@ typedef struct { X(HTMLOptionElement) \ X(HTMLScriptElement) \ X(HTMLSelectElement) \ + X(HTMLStyleElement) \ X(HTMLTitleElement) \ X(MutationObserver) \ X(Navigator) \ diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index f2b3968140f..a5703358b93 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -3184,4 +3184,6 @@ sync_test("prototypes", function() { check(HTMLScriptElement.prototype, HTMLElement.prototype, "script element prototype"); check(document.createElement("select"), HTMLSelectElement.prototype, "select element"); check(HTMLSelectElement.prototype, HTMLElement.prototype, "select element prototype"); + check(document.createElement("style"), HTMLStyleElement.prototype, "style element"); + check(HTMLStyleElement.prototype, HTMLElement.prototype, "style element prototype"); });
From: Jacek Caban jacek@codeweavers.com
--- dlls/mshtml/htmltable.c | 40 +++++++++++++++++-------------- dlls/mshtml/mshtml_private.h | 2 ++ dlls/mshtml/tests/documentmode.js | 4 ++++ 3 files changed, 28 insertions(+), 18 deletions(-)
diff --git a/dlls/mshtml/htmltable.c b/dlls/mshtml/htmltable.c index 19d03387539..be79b82e5fb 100644 --- a/dlls/mshtml/htmltable.c +++ b/dlls/mshtml/htmltable.c @@ -804,7 +804,7 @@ static const NodeImplVtbl HTMLTableRowImplVtbl = { .get_attr_col = HTMLElement_get_attr_col, };
-static const event_target_vtbl_t HTMLTableRow_event_target_vtbl = { +static const event_target_vtbl_t HTMLTableRowElement_event_target_vtbl = { { HTMLELEMENT_DISPEX_VTBL_ENTRIES, .query_interface= HTMLTableRow_query_interface, @@ -816,18 +816,20 @@ static const event_target_vtbl_t HTMLTableRow_event_target_vtbl = { .handle_event = HTMLElement_handle_event };
-static const tid_t HTMLTableRow_iface_tids[] = { +static const tid_t HTMLTableRowElement_iface_tids[] = { HTMLELEMENT_TIDS, IHTMLTableRow_tid, 0 };
-static dispex_static_data_t HTMLTableRow_dispex = { - "HTMLTableRowElement", - &HTMLTableRow_event_target_vtbl.dispex_vtbl, - DispHTMLTableRow_tid, - HTMLTableRow_iface_tids, - HTMLElement_init_dispex_info +dispex_static_data_t HTMLTableRowElement_dispex = { + .name = "HTMLTableRowElement", + .id = PROT_HTMLTableRowElement, + .prototype_id = PROT_HTMLElement, + .vtbl = &HTMLTableRowElement_event_target_vtbl.dispex_vtbl, + .disp_tid = DispHTMLTableRow_tid, + .iface_tids = HTMLTableRowElement_iface_tids, + .init_info = HTMLElement_init_dispex_info, };
HRESULT HTMLTableRow_Create(HTMLDocumentNode *doc, nsIDOMElement *nselem, HTMLElement **elem) @@ -842,7 +844,7 @@ HRESULT HTMLTableRow_Create(HTMLDocumentNode *doc, nsIDOMElement *nselem, HTMLEl ret->IHTMLTableRow_iface.lpVtbl = &HTMLTableRowVtbl; ret->element.node.vtbl = &HTMLTableRowImplVtbl;
- HTMLElement_Init(&ret->element, doc, nselem, &HTMLTableRow_dispex); + HTMLElement_Init(&ret->element, doc, nselem, &HTMLTableRowElement_dispex);
nsres = nsIDOMElement_QueryInterface(nselem, &IID_nsIDOMHTMLTableRowElement, (void**)&ret->nsrow); assert(nsres == NS_OK); @@ -1655,7 +1657,7 @@ static const NodeImplVtbl HTMLTableImplVtbl = { .get_attr_col = HTMLElement_get_attr_col, };
-static const event_target_vtbl_t HTMLTable_event_target_vtbl = { +static const event_target_vtbl_t HTMLTableElement_event_target_vtbl = { { HTMLELEMENT_DISPEX_VTBL_ENTRIES, .query_interface= HTMLTable_query_interface, @@ -1667,7 +1669,7 @@ static const event_target_vtbl_t HTMLTable_event_target_vtbl = { .handle_event = HTMLElement_handle_event };
-static const tid_t HTMLTable_iface_tids[] = { +static const tid_t HTMLTableElement_iface_tids[] = { HTMLELEMENT_TIDS, IHTMLTable_tid, IHTMLTable2_tid, @@ -1675,12 +1677,14 @@ static const tid_t HTMLTable_iface_tids[] = { 0 };
-static dispex_static_data_t HTMLTable_dispex = { - "HTMLTableElement", - &HTMLTable_event_target_vtbl.dispex_vtbl, - DispHTMLTable_tid, - HTMLTable_iface_tids, - HTMLElement_init_dispex_info +dispex_static_data_t HTMLTableElement_dispex = { + .name = "HTMLTableElement", + .id = PROT_HTMLTableElement, + .prototype_id = PROT_HTMLElement, + .vtbl = &HTMLTableElement_event_target_vtbl.dispex_vtbl, + .disp_tid = DispHTMLTable_tid, + .iface_tids = HTMLTableElement_iface_tids, + .init_info = HTMLElement_init_dispex_info, };
HRESULT HTMLTable_Create(HTMLDocumentNode *doc, nsIDOMElement *nselem, HTMLElement **elem) @@ -1697,7 +1701,7 @@ HRESULT HTMLTable_Create(HTMLDocumentNode *doc, nsIDOMElement *nselem, HTMLEleme ret->IHTMLTable2_iface.lpVtbl = &HTMLTable2Vtbl; ret->IHTMLTable3_iface.lpVtbl = &HTMLTable3Vtbl;
- HTMLElement_Init(&ret->element, doc, nselem, &HTMLTable_dispex); + HTMLElement_Init(&ret->element, doc, nselem, &HTMLTableElement_dispex);
nsres = nsIDOMElement_QueryInterface(nselem, &IID_nsIDOMHTMLTableElement, (void**)&ret->nstable); assert(nsres == NS_OK); diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index 40bde4fd98e..f8c16162862 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -432,6 +432,8 @@ typedef struct { X(HTMLScriptElement) \ X(HTMLSelectElement) \ X(HTMLStyleElement) \ + X(HTMLTableElement) \ + X(HTMLTableRowElement) \ X(HTMLTitleElement) \ X(MutationObserver) \ X(Navigator) \ diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index a5703358b93..c170addbad4 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -3186,4 +3186,8 @@ sync_test("prototypes", function() { check(HTMLSelectElement.prototype, HTMLElement.prototype, "select element prototype"); check(document.createElement("style"), HTMLStyleElement.prototype, "style element"); check(HTMLStyleElement.prototype, HTMLElement.prototype, "style element prototype"); + check(document.createElement("table"), HTMLTableElement.prototype, "table element"); + check(HTMLTableElement.prototype, HTMLElement.prototype, "table element prototype"); + check(document.createElement("tr"), HTMLTableRowElement.prototype, "tr element"); + check(HTMLTableRowElement.prototype, HTMLElement.prototype, "tr element prototype"); });
From: Jacek Caban jacek@codeweavers.com
--- dlls/mshtml/htmltable.c | 26 +++++++++++++++++--------- dlls/mshtml/mshtml_private.h | 2 ++ dlls/mshtml/tests/documentmode.js | 3 +++ 3 files changed, 22 insertions(+), 9 deletions(-)
diff --git a/dlls/mshtml/htmltable.c b/dlls/mshtml/htmltable.c index be79b82e5fb..64edc89fd41 100644 --- a/dlls/mshtml/htmltable.c +++ b/dlls/mshtml/htmltable.c @@ -430,7 +430,13 @@ static const NodeImplVtbl HTMLTableCellImplVtbl = { .get_attr_col = HTMLElement_get_attr_col, };
-static const event_target_vtbl_t HTMLTableCell_event_target_vtbl = { +dispex_static_data_t HTMLTableCellElement_dispex = { + .name = "HTMLTableCellElement", + .id = PROT_HTMLTableCellElement, + .prototype_id = PROT_HTMLElement, +}; + +static const event_target_vtbl_t HTMLTableDataCellElement_event_target_vtbl = { { HTMLELEMENT_DISPEX_VTBL_ENTRIES, .query_interface= HTMLTableCell_query_interface, @@ -442,18 +448,20 @@ static const event_target_vtbl_t HTMLTableCell_event_target_vtbl = { .handle_event = HTMLElement_handle_event };
-static const tid_t HTMLTableCell_iface_tids[] = { +static const tid_t HTMLTableDataCellElement_iface_tids[] = { HTMLELEMENT_TIDS, IHTMLTableCell_tid, 0 };
-static dispex_static_data_t HTMLTableCell_dispex = { - "HTMLTableDataCellElement", - &HTMLTableCell_event_target_vtbl.dispex_vtbl, - DispHTMLTableCell_tid, - HTMLTableCell_iface_tids, - HTMLElement_init_dispex_info +dispex_static_data_t HTMLTableDataCellElement_dispex = { + .name = "HTMLTableDataCellElement", + .id = PROT_HTMLTableDataCellElement, + .prototype_id = PROT_HTMLTableCellElement, + .vtbl = &HTMLTableDataCellElement_event_target_vtbl.dispex_vtbl, + .disp_tid = DispHTMLTableCell_tid, + .iface_tids = HTMLTableDataCellElement_iface_tids, + .init_info = HTMLElement_init_dispex_info, };
HRESULT HTMLTableCell_Create(HTMLDocumentNode *doc, nsIDOMElement *nselem, HTMLElement **elem) @@ -468,7 +476,7 @@ HRESULT HTMLTableCell_Create(HTMLDocumentNode *doc, nsIDOMElement *nselem, HTMLE ret->IHTMLTableCell_iface.lpVtbl = &HTMLTableCellVtbl; ret->element.node.vtbl = &HTMLTableCellImplVtbl;
- HTMLElement_Init(&ret->element, doc, nselem, &HTMLTableCell_dispex); + HTMLElement_Init(&ret->element, doc, nselem, &HTMLTableDataCellElement_dispex);
nsres = nsIDOMElement_QueryInterface(nselem, &IID_nsIDOMHTMLTableCellElement, (void**)&ret->nscell); assert(nsres == NS_OK); diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index f8c16162862..5b73ddc967a 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -432,6 +432,8 @@ typedef struct { X(HTMLScriptElement) \ X(HTMLSelectElement) \ X(HTMLStyleElement) \ + X(HTMLTableCellElement) \ + X(HTMLTableDataCellElement) \ X(HTMLTableElement) \ X(HTMLTableRowElement) \ X(HTMLTitleElement) \ diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index c170addbad4..a6684be69dc 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -3190,4 +3190,7 @@ sync_test("prototypes", function() { check(HTMLTableElement.prototype, HTMLElement.prototype, "table element prototype"); check(document.createElement("tr"), HTMLTableRowElement.prototype, "tr element"); check(HTMLTableRowElement.prototype, HTMLElement.prototype, "tr element prototype"); + check(document.createElement("td"), HTMLTableDataCellElement.prototype, "td element"); + check(HTMLTableDataCellElement.prototype, HTMLTableCellElement.prototype, "td element prototype"); + check(HTMLTableCellElement.prototype, HTMLElement.prototype, "table cell prototype"); });
From: Jacek Caban jacek@codeweavers.com
--- dlls/mshtml/htmltextarea.c | 14 ++++++++------ dlls/mshtml/mshtml_private.h | 1 + dlls/mshtml/tests/documentmode.js | 2 ++ 3 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/dlls/mshtml/htmltextarea.c b/dlls/mshtml/htmltextarea.c index de0cd735e9e..613fe629117 100644 --- a/dlls/mshtml/htmltextarea.c +++ b/dlls/mshtml/htmltextarea.c @@ -415,12 +415,14 @@ static const tid_t HTMLTextAreaElement_iface_tids[] = { 0 };
-static dispex_static_data_t HTMLTextAreaElement_dispex = { - "HTMLTextAreaElement", - &HTMLTextAreaElement_event_target_vtbl.dispex_vtbl, - DispHTMLTextAreaElement_tid, - HTMLTextAreaElement_iface_tids, - HTMLElement_init_dispex_info +dispex_static_data_t HTMLTextAreaElement_dispex = { + .name = "HTMLTextAreaElement", + .id = PROT_HTMLTextAreaElement, + .prototype_id = PROT_HTMLElement, + .vtbl = &HTMLTextAreaElement_event_target_vtbl.dispex_vtbl, + .disp_tid = DispHTMLTextAreaElement_tid, + .iface_tids = HTMLTextAreaElement_iface_tids, + .init_info = HTMLElement_init_dispex_info, };
HRESULT HTMLTextAreaElement_Create(HTMLDocumentNode *doc, nsIDOMElement *nselem, HTMLElement **elem) diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index 5b73ddc967a..9696e4d5df5 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -436,6 +436,7 @@ typedef struct { X(HTMLTableDataCellElement) \ X(HTMLTableElement) \ X(HTMLTableRowElement) \ + X(HTMLTextAreaElement) \ X(HTMLTitleElement) \ X(MutationObserver) \ X(Navigator) \ diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index a6684be69dc..ecf6e826ade 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -3193,4 +3193,6 @@ sync_test("prototypes", function() { check(document.createElement("td"), HTMLTableDataCellElement.prototype, "td element"); check(HTMLTableDataCellElement.prototype, HTMLTableCellElement.prototype, "td element prototype"); check(HTMLTableCellElement.prototype, HTMLElement.prototype, "table cell prototype"); + check(document.createElement("textarea"), HTMLTextAreaElement.prototype, "textarea element"); + check(HTMLTextAreaElement.prototype, HTMLElement.prototype, "textarea element prototype"); });
From: Jacek Caban jacek@codeweavers.com
--- dlls/mshtml/mshtml_private.h | 2 ++ dlls/mshtml/svg.c | 28 ++++++++++++++++------------ dlls/mshtml/tests/documentmode.js | 8 +++++++- 3 files changed, 25 insertions(+), 13 deletions(-)
diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index 9696e4d5df5..3218582347b 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -441,6 +441,8 @@ typedef struct { X(MutationObserver) \ X(Navigator) \ X(Node) \ + X(SVGElement) \ + X(SVGSVGElement) \ X(Storage) \ X(Window) \ X(XMLHttpRequest) diff --git a/dlls/mshtml/svg.c b/dlls/mshtml/svg.c index c72046f1e3f..524a2aed62a 100644 --- a/dlls/mshtml/svg.c +++ b/dlls/mshtml/svg.c @@ -156,12 +156,14 @@ static const event_target_vtbl_t SVGElement_event_target_vtbl = { .handle_event = HTMLElement_handle_event };
-static dispex_static_data_t SVGElement_dispex = { - "HTMLUnknownElement", - &SVGElement_event_target_vtbl.dispex_vtbl, - DispHTMLUnknownElement_tid, - HTMLElement_iface_tids, - HTMLElement_init_dispex_info +dispex_static_data_t SVGElement_dispex = { + .name = "SVGElement", + .id = PROT_SVGElement, + .prototype_id = PROT_Element, + .vtbl = &SVGElement_event_target_vtbl.dispex_vtbl, + .disp_tid = DispHTMLUnknownElement_tid, + .iface_tids = HTMLElement_iface_tids, + .init_info = HTMLElement_init_dispex_info, };
static void init_svg_element(SVGElement *svg_element, HTMLDocumentNode *doc, nsIDOMSVGElement *nselem, dispex_static_data_t *dispex_data) @@ -656,12 +658,14 @@ static const event_target_vtbl_t SVGSVGElement_event_target_vtbl = { .handle_event = HTMLElement_handle_event };
-static dispex_static_data_t SVGSVGElement_dispex = { - "HTMLUnknownElement", - &SVGSVGElement_event_target_vtbl.dispex_vtbl, - DispHTMLUnknownElement_tid, - HTMLElement_iface_tids, - HTMLElement_init_dispex_info +dispex_static_data_t SVGSVGElement_dispex = { + .name = "SVGSVGElement", + .id = PROT_SVGSVGElement, + .prototype_id = PROT_SVGElement, + .vtbl = &SVGSVGElement_event_target_vtbl.dispex_vtbl, + .disp_tid = DispHTMLUnknownElement_tid, + .iface_tids = HTMLElement_iface_tids, + .init_info = HTMLElement_init_dispex_info, };
static HRESULT create_viewport_element(HTMLDocumentNode *doc, nsIDOMSVGElement *nselem, HTMLElement **elem) diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index ecf6e826ade..f3e8b99a6bd 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -19,6 +19,8 @@ var compat_version; var tests = [];
+var svg_ns = "http://www.w3.org/2000/svg"; + ok(performance.timing.navigationStart > 0, "navigationStart <= 0"); ok(performance.timing.fetchStart == performance.timing.navigationStart, "fetchStart != navigationStart"); ok(performance.timing.domainLookupStart >= performance.timing.fetchStart, "domainLookupStart < fetchStart"); @@ -347,6 +349,8 @@ sync_test("builtin_toString", function() { if(v >= 9) { document.body.innerHTML = "<!--...-->"; test("comment", document.body.firstChild, "Comment"); + + test("SVGSVGElement", document.createElementNS(svg_ns, "svg"), "SVGSVGElement"); } });
@@ -2228,7 +2232,6 @@ sync_test("elem_attrNS", function() { if(v < 9) return; /* not available */
var specialspace_ns = "http://www.mozilla.org/ns/specialspace"; - var svg_ns = "http://www.w3.org/2000/svg";
var elem = document.createElement("div"), r;
@@ -3195,4 +3198,7 @@ sync_test("prototypes", function() { check(HTMLTableCellElement.prototype, HTMLElement.prototype, "table cell prototype"); check(document.createElement("textarea"), HTMLTextAreaElement.prototype, "textarea element"); check(HTMLTextAreaElement.prototype, HTMLElement.prototype, "textarea element prototype"); + check(document.createElementNS(svg_ns, "svg"), SVGSVGElement.prototype, "svg:svg element"); + check(SVGSVGElement.prototype, SVGElement.prototype, "svg:svg element prototype"); + check(SVGElement.prototype, Element.prototype, "svg element prototype"); });
From: Jacek Caban jacek@codeweavers.com
--- dlls/mshtml/mshtml_private.h | 1 + dlls/mshtml/svg.c | 14 ++++++++------ dlls/mshtml/tests/documentmode.js | 3 +++ 3 files changed, 12 insertions(+), 6 deletions(-)
diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index 3218582347b..73e4cd4db84 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -441,6 +441,7 @@ typedef struct { X(MutationObserver) \ X(Navigator) \ X(Node) \ + X(SVGCircleElement) \ X(SVGElement) \ X(SVGSVGElement) \ X(Storage) \ diff --git a/dlls/mshtml/svg.c b/dlls/mshtml/svg.c index 524a2aed62a..a4a1b7c24dc 100644 --- a/dlls/mshtml/svg.c +++ b/dlls/mshtml/svg.c @@ -790,12 +790,14 @@ static const event_target_vtbl_t SVGCircleElement_event_target_vtbl = { .handle_event = HTMLElement_handle_event };
-static dispex_static_data_t SVGCircleElement_dispex = { - "HTMLUnknownElement", - &SVGCircleElement_event_target_vtbl.dispex_vtbl, - DispHTMLUnknownElement_tid, - HTMLElement_iface_tids, - HTMLElement_init_dispex_info +dispex_static_data_t SVGCircleElement_dispex = { + .name = "SVGCircleElement", + .id = PROT_SVGCircleElement, + .prototype_id = PROT_SVGElement, + .vtbl = &SVGCircleElement_event_target_vtbl.dispex_vtbl, + .disp_tid = DispHTMLUnknownElement_tid, + .iface_tids = HTMLElement_iface_tids, + .init_info = HTMLElement_init_dispex_info, };
static HRESULT create_circle_element(HTMLDocumentNode *doc, nsIDOMSVGElement *nselem, HTMLElement **elem) diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index f3e8b99a6bd..34569bf24fe 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -351,6 +351,7 @@ sync_test("builtin_toString", function() { test("comment", document.body.firstChild, "Comment");
test("SVGSVGElement", document.createElementNS(svg_ns, "svg"), "SVGSVGElement"); + test("SVGCircleElement", document.createElementNS(svg_ns, "circle"), "SVGCircleElement"); } });
@@ -3201,4 +3202,6 @@ sync_test("prototypes", function() { check(document.createElementNS(svg_ns, "svg"), SVGSVGElement.prototype, "svg:svg element"); check(SVGSVGElement.prototype, SVGElement.prototype, "svg:svg element prototype"); check(SVGElement.prototype, Element.prototype, "svg element prototype"); + check(document.createElementNS(svg_ns, "circle"), SVGCircleElement.prototype, "svg:circle element"); + check(SVGCircleElement.prototype, SVGElement.prototype, "svg:circle element prototype"); });
From: Jacek Caban jacek@codeweavers.com
--- dlls/mshtml/mshtml_private.h | 3 +++ dlls/mshtml/svg.c | 26 ++++++++++++++++++++------ dlls/mshtml/tests/documentmode.js | 5 +++++ 3 files changed, 28 insertions(+), 6 deletions(-)
diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index 73e4cd4db84..fd63127b582 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -444,6 +444,9 @@ typedef struct { X(SVGCircleElement) \ X(SVGElement) \ X(SVGSVGElement) \ + X(SVGTSpanElement) \ + X(SVGTextContentElement) \ + X(SVGTextPositioningElement) \ X(Storage) \ X(Window) \ X(XMLHttpRequest) diff --git a/dlls/mshtml/svg.c b/dlls/mshtml/svg.c index a4a1b7c24dc..ee06ea17061 100644 --- a/dlls/mshtml/svg.c +++ b/dlls/mshtml/svg.c @@ -979,6 +979,18 @@ static void *SVGTSpanElement_query_interface(DispatchEx *dispex, REFIID riid) return SVGElement_query_interface(&This->svg_element.element.node.event_target.dispex, riid); }
+dispex_static_data_t SVGTextContentElement_dispex = { + .name = "SVGTextContentElement", + .id = PROT_SVGTextContentElement, + .prototype_id = PROT_SVGElement, +}; + +dispex_static_data_t SVGTextPositioningElement_dispex = { + .name = "SVGTextPositioningElement", + .id = PROT_SVGTextPositioningElement, + .prototype_id = PROT_SVGTextContentElement, +}; + static const NodeImplVtbl SVGTSpanElementImplVtbl = { .clsid = &CLSID_SVGTSpanElement, .cpc_entries = HTMLElement_cpc, @@ -998,12 +1010,14 @@ static const event_target_vtbl_t SVGTSpanElement_event_target_vtbl = { .handle_event = HTMLElement_handle_event };
-static dispex_static_data_t SVGTSpanElement_dispex = { - "HTMLUnknownElement", - &SVGTSpanElement_event_target_vtbl.dispex_vtbl, - DispHTMLUnknownElement_tid, - HTMLElement_iface_tids, - HTMLElement_init_dispex_info +dispex_static_data_t SVGTSpanElement_dispex = { + .name = "SVGTSpanElement", + .id = PROT_SVGTSpanElement, + .prototype_id = PROT_SVGTextPositioningElement, + .vtbl = &SVGTSpanElement_event_target_vtbl.dispex_vtbl, + .disp_tid = DispHTMLUnknownElement_tid, + .iface_tids = HTMLElement_iface_tids, + .init_info = HTMLElement_init_dispex_info, };
static HRESULT create_tspan_element(HTMLDocumentNode *doc, nsIDOMSVGElement *nselem, HTMLElement **elem) diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index 34569bf24fe..b3f0d8964a9 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -352,6 +352,7 @@ sync_test("builtin_toString", function() {
test("SVGSVGElement", document.createElementNS(svg_ns, "svg"), "SVGSVGElement"); test("SVGCircleElement", document.createElementNS(svg_ns, "circle"), "SVGCircleElement"); + test("SVGCircleElement", document.createElementNS(svg_ns, "tspan"), "SVGTSpanElement"); } });
@@ -3204,4 +3205,8 @@ sync_test("prototypes", function() { check(SVGElement.prototype, Element.prototype, "svg element prototype"); check(document.createElementNS(svg_ns, "circle"), SVGCircleElement.prototype, "svg:circle element"); check(SVGCircleElement.prototype, SVGElement.prototype, "svg:circle element prototype"); + check(document.createElementNS(svg_ns, "tspan"), SVGTSpanElement.prototype, "svg:tspan element"); + check(SVGTSpanElement.prototype, SVGTextPositioningElement.prototype, "svg:tspan element prototype"); + check(SVGTextPositioningElement.prototype, SVGTextContentElement.prototype, "SVGTextPositioningElement prototype"); + check(SVGTextContentElement.prototype, SVGElement.prototype, "SVGTextPositioningElement prototype"); });
From: Jacek Caban jacek@codeweavers.com
--- dlls/mshtml/htmldoc.c | 12 +++++++----- dlls/mshtml/mshtml_private.h | 1 + dlls/mshtml/tests/documentmode.js | 2 ++ 3 files changed, 10 insertions(+), 5 deletions(-)
diff --git a/dlls/mshtml/htmldoc.c b/dlls/mshtml/htmldoc.c index 13731e62474..14234cdfd69 100644 --- a/dlls/mshtml/htmldoc.c +++ b/dlls/mshtml/htmldoc.c @@ -322,11 +322,13 @@ static const tid_t DocumentType_iface_tids[] = { 0 };
-static dispex_static_data_t DocumentType_dispex = { - "DocumentType", - &DocumentType_event_target_vtbl.dispex_vtbl, - DispDOMDocumentType_tid, - DocumentType_iface_tids +dispex_static_data_t DocumentType_dispex = { + .name = "DocumentType", + .id = PROT_DocumentType, + .prototype_id = PROT_Node, + .vtbl = &DocumentType_event_target_vtbl.dispex_vtbl, + .disp_tid = DispDOMDocumentType_tid, + .iface_tids = DocumentType_iface_tids, };
HRESULT create_doctype_node(HTMLDocumentNode *doc, nsIDOMNode *nsnode, HTMLDOMNode **ret) diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index fd63127b582..16bc67ac12b 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -409,6 +409,7 @@ typedef struct { #define ALL_PROTOTYPES \ X(DOMImplementation) \ X(Document) \ + X(DocumentType) \ X(Element) \ X(HTMLAnchorElement) \ X(HTMLAreaElement) \ diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index b3f0d8964a9..c7d3780b891 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -3209,4 +3209,6 @@ sync_test("prototypes", function() { check(SVGTSpanElement.prototype, SVGTextPositioningElement.prototype, "svg:tspan element prototype"); check(SVGTextPositioningElement.prototype, SVGTextContentElement.prototype, "SVGTextPositioningElement prototype"); check(SVGTextContentElement.prototype, SVGElement.prototype, "SVGTextPositioningElement prototype"); + check(document.doctype, DocumentType.prototype, "doctype"); + check(DocumentType.prototype, Node.prototype, "doctype prototype"); });
From: Jacek Caban jacek@codeweavers.com
--- dlls/mshtml/htmltextnode.c | 20 +++++++++++--------- dlls/mshtml/mshtml_private.h | 1 + dlls/mshtml/tests/documentmode.js | 2 ++ 3 files changed, 14 insertions(+), 9 deletions(-)
diff --git a/dlls/mshtml/htmltextnode.c b/dlls/mshtml/htmltextnode.c index 06dac8fff24..d6f914dc44d 100644 --- a/dlls/mshtml/htmltextnode.c +++ b/dlls/mshtml/htmltextnode.c @@ -257,26 +257,28 @@ static const NodeImplVtbl HTMLDOMTextNodeImplVtbl = { .clone = HTMLDOMTextNode_clone };
-static const dispex_static_data_vtbl_t HTMLDOMTextNode_dispex_vtbl = { +static const dispex_static_data_vtbl_t Text_dispex_vtbl = { .query_interface = HTMLDOMTextNode_query_interface, .destructor = HTMLDOMNode_destructor, .traverse = HTMLDOMNode_traverse, .unlink = HTMLDOMNode_unlink };
-static const tid_t HTMLDOMTextNode_iface_tids[] = { +static const tid_t Text_iface_tids[] = { IHTMLDOMNode_tid, IHTMLDOMNode2_tid, IHTMLDOMTextNode_tid, IHTMLDOMTextNode2_tid, 0 }; -static dispex_static_data_t HTMLDOMTextNode_dispex = { - "Text", - &HTMLDOMTextNode_dispex_vtbl, - DispHTMLDOMTextNode_tid, - HTMLDOMTextNode_iface_tids, - HTMLDOMNode_init_dispex_info +dispex_static_data_t Text_dispex = { + .name = "Text", + .id = PROT_Text, + .prototype_id = PROT_Node, + .vtbl = &Text_dispex_vtbl, + .disp_tid = DispHTMLDOMTextNode_tid, + .iface_tids = Text_iface_tids, + .init_info = HTMLDOMNode_init_dispex_info, };
HRESULT HTMLDOMTextNode_Create(HTMLDocumentNode *doc, nsIDOMNode *nsnode, HTMLDOMNode **node) @@ -292,7 +294,7 @@ HRESULT HTMLDOMTextNode_Create(HTMLDocumentNode *doc, nsIDOMNode *nsnode, HTMLDO ret->IHTMLDOMTextNode_iface.lpVtbl = &HTMLDOMTextNodeVtbl; ret->IHTMLDOMTextNode2_iface.lpVtbl = &HTMLDOMTextNode2Vtbl;
- HTMLDOMNode_Init(doc, &ret->node, nsnode, &HTMLDOMTextNode_dispex); + HTMLDOMNode_Init(doc, &ret->node, nsnode, &Text_dispex);
nsres = nsIDOMNode_QueryInterface(nsnode, &IID_nsIDOMText, (void**)&ret->nstext); assert(nsres == NS_OK && (nsIDOMNode*)ret->nstext == ret->node.nsnode); diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index 16bc67ac12b..2c194c2925b 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -449,6 +449,7 @@ typedef struct { X(SVGTextContentElement) \ X(SVGTextPositioningElement) \ X(Storage) \ + X(Text) \ X(Window) \ X(XMLHttpRequest)
diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index c7d3780b891..5a7316baaaa 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -3211,4 +3211,6 @@ sync_test("prototypes", function() { check(SVGTextContentElement.prototype, SVGElement.prototype, "SVGTextPositioningElement prototype"); check(document.doctype, DocumentType.prototype, "doctype"); check(DocumentType.prototype, Node.prototype, "doctype prototype"); + check(document.createTextNode(""), Text.prototype, "text"); + check(Text.prototype, Node.prototype, "text prototype"); });
Hi,
It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated.
The tests also ran into some preexisting test failures. If you know how to fix them that would be helpful. See the TestBot job for the details:
The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=147614
Your paranoid android.
=== w7u_2qxl (32 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w7u_adm (32 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w7u_el (32 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w8 (32 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w8adm (32 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w864 (32 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w1064v1507 (32 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w1064v1809 (32 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w1064_tsign (32 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w10pro64 (32 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w10pro64_en_AE_u8 (32 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w11pro64 (32 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w7pro64 (64 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w864 (64 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w1064v1507 (64 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w1064v1809 (64 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w1064_2qxl (64 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w1064_adm (64 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w1064_tsign (64 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w10pro64 (64 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w10pro64_ar (64 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w10pro64_ja (64 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w10pro64_zh_CN (64 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== w11pro64_amd (64 bit report) ===
mshtml: script.c:1223: Test failed: L"index.html?9:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?10:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object" script.c:1223: Test failed: L"/index.html?11:prototypes: unexpected text prototype prototype object"
=== debian11b (64 bit WoW report) ===
user32: input.c:733: Test failed: peek: raw_legacy: 0: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x1, flags 0, vkey F, message WM_KEYDOWN, extra 0 input.c:733: Test failed: peek: raw_legacy: 0: test->expect 1 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_KEYDOWN, wparam 0x46, lparam 0x10001 input.c:733: Test failed: peek: raw_legacy: 0: test->expect 2 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_CHAR, wparam 0x66, lparam 0x10001 input.c:734: Test failed: peek: raw_legacy: 0: got F: 0 input.c:733: Test failed: peek: raw_legacy: 1: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x2, flags 0x1, vkey F, message WM_KEYUP, extra 0 input.c:733: Test failed: peek: raw_legacy: 1: test->expect 1 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_KEYUP, wparam 0x46, lparam 0xffffffffc0020001 input.c:733: Test failed: peek: raw_vk_packet_legacy: 0: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x1, flags 0, vkey 0xe7, message WM_KEYDOWN, extra 0 input.c:733: Test failed: peek: raw_vk_packet_legacy: 0: test->expect 1 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_KEYDOWN, wparam 0xe7, lparam 0x10001 input.c:734: Test failed: peek: raw_vk_packet_legacy: 0: got 0xe7: 0 input.c:733: Test failed: peek: raw_vk_packet_legacy: 1: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x2, flags 0x1, vkey 0xe7, message WM_KEYUP, extra 0 input.c:733: Test failed: peek: raw_vk_packet_legacy: 1: test->expect 1 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_KEYUP, wparam 0xe7, lparam 0xffffffffc0020001 input.c:733: Test failed: peek: raw_unicode_legacy: 0: test->expect 1 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_CHAR, wparam 0x3c0, lparam 0x1 input.c:734: Test failed: peek: raw_unicode_legacy: 0: got 0xe7: 0 input.c:733: Test failed: peek: raw_unicode_vkey_ctrl_legacy: 0: test->expect 0 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_KEYDOWN, wparam 0x11, lparam 0xc00001 input.c:734: Test failed: peek: raw_unicode_vkey_ctrl_legacy: 0: got VK_CONTROL: 0 input.c:734: Test failed: peek: raw_unicode_vkey_ctrl_legacy: 0: got VK_LCONTROL: 0 input.c:733: Test failed: peek: raw_unicode_vkey_ctrl_legacy: 1: test->expect 0 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_KEYUP, wparam 0x11, lparam 0xffffffffc0c00001 input.c:733: Test failed: peek: raw_nolegacy: 0: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x1, flags 0, vkey F, message WM_KEYDOWN, extra 0 input.c:733: Test failed: peek: raw_nolegacy: 1: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x2, flags 0x1, vkey F, message WM_KEYUP, extra 0 input.c:733: Test failed: peek: raw_vk_packet_nolegacy: 0: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x1, flags 0, vkey 0xe7, message WM_KEYDOWN, extra 0 input.c:733: Test failed: peek: raw_vk_packet_nolegacy: 1: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x2, flags 0x1, vkey 0xe7, message WM_KEYUP, extra 0 input.c:733: Test failed: receive: raw_legacy: 0: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x1, flags 0, vkey F, message WM_KEYDOWN, extra 0 input.c:733: Test failed: receive: raw_legacy: 0: test->expect 1 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_KEYDOWN, wparam 0x46, lparam 0x10001 input.c:733: Test failed: receive: raw_legacy: 0: test->expect 2 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_CHAR, wparam 0x66, lparam 0x10001 input.c:734: Test failed: receive: raw_legacy: 0: got F: 0 input.c:733: Test failed: receive: raw_legacy: 1: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x2, flags 0x1, vkey F, message WM_KEYUP, extra 0 input.c:733: Test failed: receive: raw_legacy: 1: test->expect 1 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_KEYUP, wparam 0x46, lparam 0xffffffffc0020001 input.c:733: Test failed: receive: raw_vk_packet_legacy: 0: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x1, flags 0, vkey 0xe7, message WM_KEYDOWN, extra 0 input.c:733: Test failed: receive: raw_vk_packet_legacy: 0: test->expect 1 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_KEYDOWN, wparam 0xe7, lparam 0x10001 input.c:734: Test failed: receive: raw_vk_packet_legacy: 0: got 0xe7: 0 input.c:733: Test failed: receive: raw_vk_packet_legacy: 1: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x2, flags 0x1, vkey 0xe7, message WM_KEYUP, extra 0 input.c:733: Test failed: receive: raw_vk_packet_legacy: 1: test->expect 1 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_KEYUP, wparam 0xe7, lparam 0xffffffffc0020001 input.c:733: Test failed: receive: raw_unicode_legacy: 0: test->expect 1 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_CHAR, wparam 0x3c0, lparam 0x1 input.c:734: Test failed: receive: raw_unicode_legacy: 0: got 0xe7: 0 input.c:733: Test failed: receive: raw_unicode_vkey_ctrl_legacy: 0: test->expect 0 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_KEYDOWN, wparam 0x11, lparam 0xc00001 input.c:734: Test failed: receive: raw_unicode_vkey_ctrl_legacy: 0: got VK_CONTROL: 0 input.c:734: Test failed: receive: raw_unicode_vkey_ctrl_legacy: 0: got VK_LCONTROL: 0 input.c:733: Test failed: receive: raw_unicode_vkey_ctrl_legacy: 1: test->expect 0 (missing): MSG_TEST_WIN hwnd 0000000000000000, WM_KEYUP, wparam 0x11, lparam 0xffffffffc0c00001 input.c:733: Test failed: receive: raw_nolegacy: 0: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x1, flags 0, vkey F, message WM_KEYDOWN, extra 0 input.c:733: Test failed: receive: raw_nolegacy: 1: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x2, flags 0x1, vkey F, message WM_KEYUP, extra 0 input.c:733: Test failed: receive: raw_vk_packet_nolegacy: 0: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x1, flags 0, vkey 0xe7, message WM_KEYDOWN, extra 0 input.c:733: Test failed: receive: raw_vk_packet_nolegacy: 1: test->expect 0 (missing): got WM_INPUT key hwnd 0000000000000000, code 0, make_code 0x2, flags 0x1, vkey 0xe7, message WM_KEYUP, extra 0